Vista previa del material en texto
POO Introducción a Java Elementos básicos de Java •Variables, Constantes y Expresiones. •Asignación. •Tipos Elementales. Precedencia de los Operadores. Casting. •Estructuras de Control. Condicional e Iteración. Recursividad. •Estructura de una Clase en Java. •Métodos. •El método main. Variables y Constantes Declaración [< modificador>] < tipo > < ident > [ , < ident > ]; int i,I,j101; final char fin ='.'; boolean eureka; Tipos de Datos - Tipos Elementales Nombre de Tipo Valor Memoria requerida Rango byte integer 1 byte -128 a 127 short integer 2 bytes -32768 a 32767 int integer 4 bytes -2147483648 a 2147483647 long integer 8 bytes float floating-point 4 bytes double floating-point 8 bytes char single character 2 bytes UNICODE boolean true or false 1 bit Asignación < ident > = < expresion >; < tipo >< ident > = < exp > [,< ident > = < exp > ]; Cuando la expresión que aparece a la derecha de una asignación no coincide con el tipo de la variable que está a la izquierda puede producirse una conversión automática o un error. El error puede salvarse mediante una operación de casting. Casting •Cuando el número a convertir está fuera del rango del tipo a que se quiere convertir, entonces la conversión automática es imposible. •Se debe realizar una conversión forzada (explícita), que se denomina casting. •La sintaxis para realizar un casting es: destino = (tipo_destino) valor •En el caso de los tipos numéricos, al "recortar" el valor de la variable de rango mayor perdemos precisión. Estructuras de Control - Bloque <bloque> → { [< instruccion > ]* } {promedio = total / n ; System.out.print("El promedio es "); System.out.println(promedio);} {int temp; temp = x; x = y; y = temp;} Bloque •Un bloque define un nuevo ambiente de referenciamiento. •Las variables declaradas dentro de un bloque son locales y no son visibles fuera de él. •Un mismo nombre no puede ligarse a dos variables en el mismo bloque ni en bloques anidados. •Una variable puede ser referenciada a partir de la instrucción que sigue a su declaración. Estructuras de Control Condicionales < instruccion if > → if < expresion booleana > < instruccion > else < instrucción > if (x > y) max = x; else max = y; if (x > y){ max = x; min = y ; }else{ max = y; min = x ; } if (x > y) { int temp; temp = x; x = y; y = temp; } Expresiones Operadores Relacionales Operadores Lógicos igual == distinto != menor < menor o igual <= mayor > mayor o igual >= operador and (y) && operador or (o) || operador not (no) ! Estructuras de Control <instruccion switch> → switch(<expression>) { [ case<constante> : <instruccion> ]* default: <instruccion> } Estructuras de Control switch (notafinal){ case 10: obs = "Excelente"; break; case 9: case 8: obs = "Muy bueno"; break; case 7: case 6: obs = "bueno"; break; default: obs="otros"; } Estructuras de Control Repetitivas <instruccion while> → while (<expresion booleana>) <instrucción> <instruccion do while> → do <instrucción> while(<expresion booleana>) Estructuras de Control Repetitivas int numero=6253482; int digitos = 0; while (numero > 0){ numero /=10; //esto es: numero=numero/10; digitos++; //inc. en 1 el valor de digitos } System.out.println(digitos); Estructuras de Control Repetitivas int numero=2015; int digitos = 0; do { numero /=10; digitos++; }while(numero > 0); System.out.println(digitos); Estructuras de Control Repetitivas <instruccion for> → for( <asignacion>; <expresion> ; <expresion>) [ <instrucción>]* for (n=1;n<=10;n++) System.out.println(n*n); for (int n=1;n<=10;n++) System.out.println(n*n); for (int n=1,sum=0; n<=10; sum=sum+n,n++) System.out.println(n+" "+sum); Estructura de un programa en Java La unidad básica de programación en Java es la clase. Un programa en Java está constituido por una colección de clases. La implementación de una clase consiste en definir sus miembros: •Atributos: variables de instancia y de clase •Servicios: constructores y métodos Métodos Sintaxis [ < Modificador > ]* [< Tipo del Resultado > ] < Identificador > ( [< Parámetros Formales > ]* ) { < bloque > } Métodos Para que un programa en JAVA pueda ejecutarse es necesario definir una clase que incluya un método llamado main(). class Hola { public static void main (String args[]) { System.out.println("Hola Mundo!"); } } Métodos •La primera línea define una clase llamada Hola. •La segunda clase define el método main, asociado a los modificadores public y static. • La palabra void indica que el método main no retorna ningún valor. •La forma (String args[]) es la definición de los argumentos que recibe el método main.