Bienvenidos a un nuevo curso. Ahora estoy en el ciclo de grado superior: Desarrollo de aplicaciones multiplataforma. Y voy a ser parte del experimento de la formación dual. Estaré haciendo practicas durante un año, y a la vez finalizando la formación.

Deseadme suerte.

lunes, 1 de febrero de 2016

Tema 7 (1)

0

Para realizar las actividades en Java utilizamos el programa NetBeans IDE 8.1 (instalación, no heredes, activa Java y nos descargamos un paquete para facilitar el trabajo)

Lenguaje de programación Java
Características:
- Independencia de la plataforma.
- Alto rendimiento .
- Fácil de aprender.
- Basado en estándares.
- Uso a nivel mundial.
- Entornos de ejecución consistentes.
- Optimizado para el control de dispositivos embebidos.
- Recolector de basura.

Aunque usamos entornos de desarrollo integrados para facilitarnos el trabajo de creación de código fuente, compilación y posterior ejecución, podemos comprobar nuestros ficheros Java a partir aplicaciones de consola. El JDK incluye herramientas tales como javac.exe para compilación del código fuente, java.exe que permite la ejecución de ficheros Java ya compilados o javadoc.exe que permite la generación de documentación.

Cuando estamos realizando una aplicación en Java, el fichero que contiene el código fuente posee la extensión .java mientras que una vez se ha compilado, el fichero de código intermedio o bytecode posee la extensión .class. Este último fichero será el que debamos usar para ejecutar nuestro programa en cualquier sistema, siempre que disponga de la máquina virtual que sea capaz de procesarlo.

Comparación de C# con Java:
usos de ficheros externos:
using --> import
Identificación del paquete o espacio de trabajo
namespace --> package
Método para la salida de datos por el dispositivo estándar:
Console.WriteLine() --> System.out.println()
Lectura de información a partir del dispositivo de entrada estándar
Console.ReadLine() --> BufferedReader (teclado) teclado.readLine()
Conversión de tipos:
int.Parse() --> Intenger.parseInt()



Identificadores en Java
Un identificador en Java se distingue por las siguientes características:
- Debe comenzar por una letra, el símbolo $ o subrayado (_).
- Esta constituido por una combinación de letras y números.
- Existe distinción entre mayúsculas y minúsculas.

Comentarios en Java
//Comentario de una sola línea
/*Comentario de más
de una línea*/
Comentario de documentación
Un comentario de documentación se utiliza en la generación de documentación automática. Java dispone de una herramienta llamada javadoc.exe que genera un documento que resume las características de los componentes de nuestra aplicación.
/**Comentario de documentación*/
Ejemplo: Desarrolla la documentación para el siguiente código.
package ejemplo1;
import java.io.*;
public class ejemplo1
{
    /**
     * Función suma -- Realiza la suma de los operandos incluidos como parámetros.
     * @param n1 -- Primer operando, debe ser entero.
     * @param n2 -- Segundo operando, debe ser entero.
     * @return -- Resultado de sumar n1 y n2.
     */
    public static int suma (int n1, int n2)
    {
        int resultado=0;
        resultado=n1+n2;
        return resultado;
    }
   
    public static void main(String[] args)
    {
        int num1;
        int num2;
        System.out.println("Introduce los valores:");
        try
        {
            BufferedReader teclado=
                    new BufferedReader(new InputStreamReader (System.in));
            num1=Integer.parseInt(teclado.readLine());
            num2=Integer.parseInt(teclado.readLine());
            System.out.println(suma(num1,num2));
        }
        //captura de errores
        catch (IOException ex)
        {
            System.out.println("Error de E/S");
        }
    }
}



.
Tipos de datos en Java
datos primitivos o incluidos en el lenguaje:
- Boolean: Equivalente al tipo de dato bool en C#. Acepta los valores true o false.
- Char: Abarca todos los caracteres, dígitos y símbolos según el formato UNICODE.
- Tipos numéricos: Son aquellos que representan números.
                - tipo enteros: byte, short, int y long.
                - tipos reales: float y double.
los datos de referencia son aquellos que generan variables que apuntaban a una dirección de memoria en lugar del dato concreto. Entre estos encontramos los objetos de Java que hayan sido creados por el usuario o propios del lenguaje, además de los tipos de datos compuestos como arrays.

Literales en Java
Literales enteros:  Por defecto cualquier número entero en una sentencia es tomado como tipo int. Si queremos que sea tenido en cuenta como long agregas al número la letra L o l.
Literales reales: Cualquier numero decimal es tratado como double. Se puede modificar esta característica agregando la letra F o f al número, y así es interpretado como float.
Literales lógicos: Son para dar valor a variables booleanas: true o false.
Literales carácter: Se representan mediante el uso de comillas simples (').
Literales cadenas de caracteres: son representadas con comillas dobles(").
Literal nulo: es representado con null.

Declaración en variables en Java
tipo_dato nombre_variable;
tipo_dato nombre_variable=literal;
tipo_dato var1, var2, var3;

Constantes en Java
final tipo_dato nombre_variable=identificador;

Ejemplo constantes



Los operadores en Java no varían.



Realiza un pequeño programa que tenga una variable entera a la que se le asignará el valor 10 por defecto. La aplicación debe comprobar si este número es par o impar y en función de esta condición debe mostrar el mensaje "El número es par" o "El número es impar". 




operadores instanceof
El operador instanceof permite realizar una comprobación entre objetos, interfaces o arrays de forma que devuelve verdadero si el operando de la izquierda es exactamente igual al operador de la derecha. Este operador presenta utilidad cuando trabajamos con clases que heredan unas de otras.
clase instanceof Objeto(instancia)
Ejemplo instanceof
package pkginstanceof;
import java.io.*;

public class Instanceof
{
    //throws IOException significa que no tratamos los errores de excepción.
    public static void main(String[] args) throws IOException
    {
        //Creamos un arrays de objetos
        Object [] numeros=new Object[5];
       
        /*El objetivo de la aplicación es obtener la media aritmética de todos
        los números enteros y reales insertados en el array a partir de objetos
        Intenger o Double.*/
        double mediaEnteros=0.0;
        int totalEnteros=0;
        double mediaReales=0.0;
        int totalReales=0;
       
        /*Incialización del array. Al ser un array de objetos, cada casilla
        debe ser inicializada a partir del operador new. */
        numeros[0]=new Integer(10);
        numeros[1]=new Double(2.4);
        numeros[2]=new Integer(15);
        numeros[3]=new Double(3.4);
        numeros[4]=new Character('a');
       
        //El bucle se encargará de recorrer el array y analizar cada casilla.
        for (int i=0;i<5;i++)
        {
            /* Para cada casilla comprobamos si el objeto almacenado es de
            tipo Integer, si es asi usamos su valor para almacenar
            en mediaEntero*/
            if(numeros[i] instanceof Integer)
            {
                mediaEnteros+=Integer.parseInt(numeros[i].toString());
                totalEnteros++;
            }
            /* Para cada casilla comprobamos si el objeto almacenado es de
            tipo Double, si es asi usamos su valor para almacenar
            en mediaReales*/
            else if (numeros[i] instanceof Double)
            {
                mediaReales+=Double.parseDouble(numeros[i].toString());
                totalReales++;
            }
        }
       
        System.out.println("La media de los números enteros es:"
                                    +mediaEnteros/totalEnteros);
        System.out.println("La media de los números reales es:"
                                    +mediaReales/totalReales);
    }
   
}



Operadores de entrada/salida de datos en Java
entrada: System.in
Solo podremos usar el metodo read() que recoge el número entero equivalente al código ASCII  del carácter que se haya pulsado en el teclado.
Los objetos InputStreamReader y BufferedReader permiten identificar el flujo de información de entrada e incluir métodos para procesar este flujo.
InputStreamReader está diseñado para encargarse de tratar un flujo de entrada de datos que solo va a ser leído.
Para poder recoger información de teclado de forma más cómoda, usaremos el objeto BufferedReader. Este usara el flujo de entrada definido por el objeto.
InputStreamReader flujoEntrada=new InputStreamReader(Sustem.in);
BufferedReader teclado=new BufferedReader (flujoEntrada);
ó
BufferedReader teclado=new BufferedReader (new InputStreamReader(system.in));
salida: System.out
El método printf("formato", valores) es similar a Console.WriteLine("formato", valores) de C#
System.out.println("Los números son:%d-%d", num1, num2);
A la hora de generar cadena de formato, se debe especificar con el símbolo adecuado, el valor concreto que se va a referenciar. Por ejemplo, si en la cadena de control escribimos %d la variable o literal que debe encontrarse en la posición adecuada debe ser entera, en caso contrario se produce un error de ejecución, ya que los tipos de datos no serían los mismos.
1. Realiza un pequeño programa de consola que pida al usuario el valor del lado de un cuadrado y muestre como resultado el área del mismo.
2. Realiza un pequeño programa que pida al usuario una letra y muestre por pantalla el carácter siguiente especificado.




Sentencias alternativas en Java
Las sentencias de control en Java son en sintaxis iguales a las vistas en C#.






package pkg3.pkg8a3.pkg11java;
import java.io.*;

public class Main
{
    public static void main(String[] args) throws IOException
    {
        String diaSemana;
        BufferedReader teclado =
                new BufferedReader (new InputStreamReader(System.in));
        System.out.println("Introduzca el día de la semana");
        diaSemana=teclado.readLine();
        switch(diaSemana)
        {
            case "lunes":
            System.out.println("Hoy realizará la actividad psicomotricidad");
            break;
            case "martes":
            System.out.println("Hoy realizará la actividad natación");
            break;
            case "miercoles":
            System.out.println("Hoy realizará la actividad música");
            break;
            case "jueves":
            System.out.println("Hoy realizará la actividad natación");
            break;
            case "viernes":
            System.out.println("Hoy descanso");
            break;
            case "sabado":
            case "domingo":
            System.out.println("Día sin actividades");
            break;
            default:
                System.out.println("Día erróneo");
            break;
        }
    }
}



Realiza un programa que pida al usuario y devuelva la suma de todos sus dígitos.



Funciones y procedimientos en java
En Java las funciones y procedimientos se declaran de forma similar a C# aunque existen algunas diferencias en relación al paso por parametros, ya que siempre son pasados por valor.






package pkg4.pkg1al4.pkg4java;
import java.io.*;

public class Main
{
    static int CalculaPotencia() throws IOException
    {
        int base;
        int exponente;
        int resultado;
        int x;
        BufferedReader teclado=
                new BufferedReader (new InputStreamReader (System.in));
        System.out.println("Introduzca la base de la potencia");
        base=Integer.parseInt(teclado.readLine());
        resultado=base;
        System.out.println("Introduzca el exponente de la potencia");
        exponente=Integer.parseInt(teclado.readLine());
        for(x=exponente-2;x>=0; x--)
        {
            resultado=resultado*base;
        }
        return resultado;
    }
    public static void main(String[] args) throws IOException
    {
        int resultado;
        System.out.println("Este programa calcula el resultado de un potencia");
        resultado=CalculaPotencia();
        System.out.printf("El area es %d \n", resultado);
    }
}



Arrays y Matrices
La sintaxis de declaración y creación de un array y matrices en Java es similar a la vista con anterioridad en C#.
ejemplo --> juego del ahorcado



Imagina que tienes que realizar una aplicación para una tienda de forma que esta necesita almacenar sus productos en categorías.
La primera cadena de caracteres representa el nombre de la categoría y los demás casillas los nombres exactos de productos. Como se observa no tendremos la misma cantidad de productos en cada categoría. La aplicación debe permitir realizar las siguientes operaciones:
- Inicializar la matriz
- Ordenar cada categoría
- Contar los productos de una categoría.
- Añadir, modificar y eliminar un producto.

Antes de continuar debo terminar la teoría del tema 5 :(

Related Posts:

  • Editor etiquetas A Continuación os pongo el código completo. Como en las imágenes esta todo bien comentado y marcado. … Read More
  • Calculadora 1 A Continuación os pongo el código completo. Como en las imágenes esta todo bien comentado y ma… Read More
  • Formulario Read More
  • Examen de programación I 1.- Calculadora mi ejercicio (4.5 de 5 puntos debido a que no controle errores(no se pude dividir por cero) ni trabaje con decimales). usin… Read More
  • Calculadora 2 A Continuación os pongo el código completo. Como en las imágenes esta todo bien comentado y marcado. No … Read More

0 comentarios:

Publicar un comentario

Etiquetas actuales

BD (67) DEF (64) PROG (64) SQL (44) Java (29) PRACTICAS (20) php (18) DI (16) PRESTASHOP (16) PROGRAMACIÓN WEB (16) HTML (13) SGE (12) ERP (9) CONSULTAS (8) css (8) Linux (5) XML (5) Android (4) PDM (4) C (3) NetBeans (3) PSP (3) SMARTY (3) comandos (3) HOOK (2) POST (2) XSD (2) cURL (2) JS (1) MEDIA-QUERYS (1) PDO (1) RESPONSIVE (1) TPL (1) TRADUCCIÓN (1) app_inventor (1)

Todas las etiquetas

EJER (78) BD (67) DEF (64) PROG (64) SQL (44) c# (40) Programación (39) Ficheros (36) Java (29) bases de datos (21) PRACTICAS (20) lenguajes de marcas (19) AD (18) Entorno de desarrollo (18) php (18) PROCEDIMIENTOS (17) DI (16) FORM (16) PRESTASHOP (16) PROGRAMACIÓN WEB (16) lenguaje C (16) E/R (14) HTML (13) SGE (12) Sistemas informáticos (10) ERP (9) CONSULTAS (8) TRANSACCIONES (8) TRIGGER (8) VISUAL BASIC (8) css (8) FUNCIONES (7) html5 (6) Ada (5) EXAMEN (5) Linux (5) XML (5) estructuras (5) Android (4) DISEÑO (4) INTERFAZ (4) LOG (4) OpenBravo (4) PDM (4) ACTUALIZAR (3) C (3) DIAGRAMA (3) Directorios (3) NEW (3) NOR (3) NetBeans (3) OLD (3) PSP (3) SMARTY (3) comandos (3) css3 (3) AISLAMIENTOS (2) C++ (2) CONTROLERRORES (2) ELIMINAR (2) HOOK (2) INSERTAR (2) INST (2) MULTITABLA (2) POST (2) RECURSIVIDAD (2) SUBCONSULTAS (2) VISTAS (2) XSD (2) cURL (2) punteros (2) AJENA (1) BLOQUEOS (1) Byte (1) CREACION (1) CRM (1) Configuración (1) Controles (1) Datos (1) GOTFOCUS (1) IMAGENES (1) INDICES (1) JS (1) Lenght (1) MEDIA-QUERYS (1) Mingw (1) MonoDeveloped (1) OPTIMISTA (1) PDO (1) PESIMISTA (1) RESPONSIVE (1) SPEAK (1) Scanner (1) Serializacion (1) Streams (1) System (1) TPL (1) TRADUCCIÓN (1) USUARIOS (1) UseSystemPasswordChar (1) app_inventor (1) char (1) examenes (1) libreoffice (1) make (1) redes (1)