La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

El Lenguaje Java Taller de Sistemas de Programas Sandra Zabala, Marilenis Olivera Ivette Martínez, Pedro García.

Presentaciones similares


Presentación del tema: "El Lenguaje Java Taller de Sistemas de Programas Sandra Zabala, Marilenis Olivera Ivette Martínez, Pedro García."— Transcripción de la presentación:

1 El Lenguaje Java Taller de Sistemas de Programas Sandra Zabala, Marilenis Olivera Ivette Martínez, Pedro García

2 Qué es Java? Un lenguaje de programación Orientado por Objetos desarrollado por Sun Microsystems Una máquina virtual (ambiente de ejecución) que puede ser embebido en navegadores del web y diversos sistemas operativos Un conjunto estandarizado de librerías de Clases.

3 Por qué Java? Es independiente de la plataforma Es Orientado por Objetos Pequeño -> Fácil de aprender Seguro Robusto Permite recursión Multi-Thread

4 Sintaxis Muy similar a C/C++ Fácil de aprender Pocos conceptos –No aritmética de apuntadores –No structs, typedef ni #define –No se necesita liberar memoria –No core dumps (Fallas de acceso a memoria)

5 Identificadores Son “case sensitive” Los identificadores de clases comienzan con mayúcula. Los identificadores de variables y métodos comienzan con minúsculas. Si el identificador tiene más de 2 palabras, de la segunda en adelante comienzan con mayúscula.

6 Tipos Simples boolean (1bit) byte (8 bits, con signo) char (16 bits, sin signo, UNICODE short (16 bits, con signo) int (32 bits, con signo)

7 Tipos Simples (cont.) long (64 bits, con signo) float (32 bits, IEEE 754) double (64 bits, IEEE 754)

8 Más sobre tipos boolean es realmente un tipo, no es un entero null es una palabra clave los enteros no son apuntadores Chequeo adicional de tipos -> Es fuertemente tipeado.

9 Declaración de variables y constantes Todas las variables y constantes deben ser declaradas antes de su uso Para declarar constantes, se utiliza la palabra reservada final. [=] Ej:

10 Operadores: Aritméticos Binarios –+ Suma –- Resta –* Multiplicación –/ División –% Módulo Unarios –+ Positivo –- Negativo –++ Auto-incremento 1 –-- Auto-decremento 1 ** Tanto el ++ como el -- pueden ser prefijos o postfijos

11 Operadores: Relacionales y Lógicos Relacionales –> Mayor –< Menor –>= Mayor o igual –<= Menor o igual –== Igual –!= Diferente Lógicos –&& And –|| Or –! Not

12 Operadores: Asignación +=v += 5  v = v + 5 -=v -= 5  v = v - 5 *=v *= 5  v = v * 5 /=v /= 5  v = v / 5 %=v %= 5  v = v % 5 … No pueden sobrecargarse.

13 Operadores: Casting Permite la conversión de un tipo a otro Desde un tipo pequeño a uno grande provoca pérdida de información. Sintaxis y ejemplo: (nombre del tipo) valor (int) (x/y)

14 Flujo de Control if (expr) instrucción else instrucción for (expr; expr; expr) instrucción while (expr) instrucción do instrucción while (expr) switch (expr) {…}

15 Clases Implementación simple de herencia Herencia múltiple de interfaces Información de tipos disponible a tiempo de corrida Todos los métodos son virtuales o estáticos No hay funciones, sólo métodos.

16 Ejemplo de clases class Car{ void beep(){ System.out.println(“beep”); } int maxSpeed(){ return 55; } class Porsche extends Car{ int maxSpeed(){ return 200; }

17 Ejemplo de clases (cont.) Car c = new Car(); Porsche p = new Porsche(); c.beep(); p.beep(); int s1 = c.maxSpeed(); int s2 = p.maxSpeed();

18 Arreglos Son objetos Son dinámicos Se pasan por referencia Se chequean los límites

19 Arreglos (cont.) int rgb[] = new int[3]; rgb[0] = 255; rgb[1] = 100; rgb[2] = 100; int avg = sum(avg) / rgb.length; int err = rgb[4] //error

20 Vectores Implementan Arreglos de tamaño variable Constructores –Vector(), Vector(n), Vector(n,m); donde n es la capacidad y m el incremento de la capacidad addElement(); contains(Object); indexOf(Object); elementAt(int); setElementAt(Object, int); …

21 Strings Los Strings son objetos 16 bits UNICODE System.out.println (“Hello World”); String hello = “Hello”; String world = “World”; System.out.println (hello + “ “ + world); int len = hello.length; String str = hello.substring(1,len); System.out.println(“j” + str); char ch = hello.charAt(0);

22 Interfaces Definen una interfaz que una clase debe implementar Una clase puede implementar varias interfaces

23 Interfaces (cont.) interface Imprimible{ void imprimir(); } class Cosa implements Imprimible{ void imprimir(){ System.out.println(“Cosa”); }

24 Lista Imprimible void imprimirTodo(Imprimible list{ for (int i = 0 ; i < list.length; i++){ list[i].imprimir(); } Imprimible lista[] = { new Cosa(), new OtraCosa() } imprimirTodo(lista);

25 Modificadores de Acceso public - Cualquiera puede tener acceso protected - Sólo pueden tener acceso las subclases private - Sólo puede tener acceso la clase misma. El acceso por defecto es por cualquier clase en el mismo paquete (package).

26 Restringiendo el acceso a las variables class Punto{ private int x, y; public Punto(int x; int y){ this.x = x; this.y = y; } public getX(){ return x; } public getY(){ return y; }

27 Paquetes Permiten agrupar clases e interfaces. Los nombres son palabras separadas por puntos y se almacenan en directorios que coinciden con esos nombres. Ejemplo: Los archivos Applet.java, AppletContext.java, AppletStub.java, AudioClip.java tienen la siguiente línea package java.lang.applet

28 Paquetes Se cargan con la palabra import import java.Date; import java.awt.*; Si un archivo no pertenece a un paquete se coloca en el mismo directorio y se carga con la sentencia import MiClase

29 Paquetes Java.lang - Object, Thread, Exception, String, System, Number, … java.util - Hashtable, Vector, BitSet, Date, Cache, … java.io - InputStream, OutputStream, BufferedInputStream, PrintStream, … java.tools - Compilation, Debuggin, Documentation, Profiling,… Networking Abstract window toolkit

30 Manejo de Errores Soportado mediante excepciones. El modelo usado es el de C++. Try{ a = 10; b = 0; result = a/b; return result; }catch (ArithmeticException e){ System.out.println(“División por cero”); return -1; }finally { System.out.println(“Siempre se ejecuta”); }

31 Manejo de Errores Generación de excepciones: –Implícita: El programa hace algo ilegal –Explícita: throw throw ObjetoExcepcion; class ExcepcionLimiteDeVelocidad extends Exception{} try{ if (velocidad > 300) throw ExcepcionLimiteDeVelocidad; }catch(ExcepcionLimiteDeVelocidad e){ System.out.println(“Vas muy rápido”); return; }

32 Manejo de Errores Excepciones Predefinidas –ArithmeticException –NullPointerException –ClassCastException –NegativeArraySizeException –OutOfMemoryException –ArrayIndexOutOfBoundsException –...

33 Haciendo que funcione... Para compilar: javac class prueba{ public static void main(String args[]){…} } Para ejecutar: java Documentación automática: javadoc

34 Tags de javadoc


Descargar ppt "El Lenguaje Java Taller de Sistemas de Programas Sandra Zabala, Marilenis Olivera Ivette Martínez, Pedro García."

Presentaciones similares


Anuncios Google