JAVA es un lenguaje orientado a objetos, multiplataforma e interpretado que se compila a código de máquina independiente de la plataforma. Los programas en JAVA se escriben en clases que contienen métodos como main que se ejecutan cuando se invoca el intérprete de JAVA. JAVA soporta tipos de datos primitivos como enteros, reales y caracteres, así como declaraciones, expresiones, instrucciones de control de flujo y conversiones de tipos.
1. Introducción al lenguage JAVA Programación en un lenguaje orientado al objeto usando el lenguaje de programación JAVA 1
2. ¿ Por qué JAVA (por qué tan famoso ) ? Orientado al objeto (tendencia en boga) Simple (similar a c, sin complejidades) Multiplataforma (Windows, PowerMac, Unix) Robusto (hace chequeos, elimina punteros) Recolección de basura automática Bibliotecas estándar Realmente portable en un 100% Facilidades para programación en redes 2
3. JAVA es un lenguaje interpretado 3 Salida del Prog. P1.class P1.java Compilador de java (específico x plataforma) javac P1.java Intérprete de java (específico x plataforma) java P1 (class)
4. Un primer programa en JAVA public class Hello { public static void main(String args[ ]) { System.out.println(“Hola Mundo“); } } Todo programa es escrito como el método estático llamado mainen una clase cualquiera Este método se empieza a ejecutar cuando se invoca el intérprete de java para una clase dada args es un arreglo de Strings que contiene los parámetros con los que fué invocado el programa. 4
5. Tipos primitivos de datos en JAVA enteros: int, long, short, byte Const. 1, -1, 1024, 1L reales: float, double Const. 1.0, -3.14159, 1.5e4, 1.0f caracter: char Const. ‘a’, ‘X’, ‘@’ lógico: boolean Const. true, false Constantes de String: “Hola“,“12 de Abril“ 5
6. Declaraciones int i; int i = 1; double pi = 3.14159; char c = ‘a’; boolean estamos_bien = true; Las declaraciones de variables pueden ir en cualquier parte del programa pero siempre antes de que la variable sea usada.Hay que tener cuidado con el rango de validez (scope) de la declaración 6
7. Expresiones y asignación Aritmeticas: suma + 20 * c / (mod % 3) Relacionales: a > b, b >= c, c != 4, a == 0 De String: “hola “+ nombre + “ hoyes “+ dia + “de”+mes Casts: (int) pi (pi = 3.1) (int) (Math.random()*100)+1) Otros: a == 1 ? a+1 : a-1 Asignacion: a = 1; Asignacióncomooperador: a = b = c = d = 0; boolean cero = ( b = c - 10) == 0; 7
8. Conversiones de tipo Java no reclamasi un tipo de menorrango se convierte as uno de mayor rango. byte < short < int < long < float < double 8
9. Ejemplos inti = 1; long l = i; //ok l = 1000000000000; float f = l; //ok double d= 1.0e24; inti = d; // Error float f = 1.0f; inti = f; // Error short s = i; //Error double d = 1.0; inti = (int)d; //ok inti = 256; byte b = (byte)i; //ok pero b ==0; 9
10. Instrucciones de Control Instruccióncondicional: if (cond) instr; if(cond) instr; else instr; Ciclos: while (cond) instr; Ciclos: do instr; while (cond); Ciclosfor (instr1; i<10; instr2) instr; Selecciónswitch/case Agrupación de instruccionesbajo un if, else, while, for, etc. se realiza con paréntesiscrespo { } 10
11. Programa Ejemplo public class MCD { //calculo del maximocomun divisor entre 15 y 24 public static void main(String args[ ]) { int x = 15, y = 24; while (x != y) { if (x < y) y = y - x; else x = x - y; } System.out.println(“el MCD entre 15 y 24 es“ + x); } } 11
12. La clase String Son parte del lenguaje (no hay queimportarlos) Se crean: String s = new String(“HolaMundo”); peroesto se puederesumir con String s = “HolaMundo”; u Tamaño de un String: inti = s.length(); k-esimocarácter: char c = s.charAt(k); Subsecuencias: String sub = s.substring(k); String sub = s.substring(inicio, fin); Búsqueda de subsecuencias: inti = s.indexOf(“hola”); Comparacion: booleaniguales s1.equals(s2); inti = s1.compareTo(s2); 0 si s1==s2, >0 si s1>s2, <0 si s1<s2 12