Java

Solo disponible en BuenasTareas
  • Páginas : 5 (1219 palabras )
  • Descarga(s) : 0
  • Publicado : 14 de marzo de 2012
Leer documento completo
Vista previa del texto
avaProgramación Orientada a Objetos (3er curso, grupo 31) 2. El lenguaje Java

06.03.12

El lenguaje Java

 Lenguaje interpretado  Fuertemente tipado  Sintaxis similar a C / C++

Java

 Sin punteros: g p garbage collection g  100% portable  Integra librerías estándar para:
– Interfaces de usuario – Objetos distribuidos – Threads – XML – Web, Móviles, TV, muchas más…

Ejecutable desde navegadores web (Mozilla, MS Explorer, etc.)  Origen: aumentar html para páginas web más dinámicas  Creado por Sun Microsystems (actualmente Oracle, adquisición Sun en 2010)
2

Pablo Castells

Escuela Politécnica Superior Universidad Autónoma de Madrid

Programación Orientada a Objetos (3er curso, grupo 31) 2. El lenguaje Java

06.03.12

Versiones de Java
       Java 1.0 – enero 1996
– Unos cientos de clases

Java 1.1 – febrero 1997
– JavaBeans JDBC RMI JavaBeans, JDBC, RMI…

J2SE 1.2 – diciembre 1998
– Swing, reflexión, Java IDL, Collections…

J2SE 1.3 – mayo 2000
– Compatibilidad RMI/CORBA…

J2SE 1.4 – febrero 2002
– XML, JWS, mejoras internas…

J2SE 5 0 (a.k.a. 1 5) – septiembre 2004 5.0 (a k a 1.5)
– Generics, Enumerations, enhanced“for”…

Java SE 6 (a.k.a. 1.6) – diciembre 2006
– Total de 3.000+ clases, mejoras fuertes de rendimiento…

Java SE 7… ?
3

Java Development Kit (JDK)
 Java Runtime Environment (JRE)
– Java Virtual Machine (JVM) – Java API: lenguaje básico + librería estándar de clases

 Compilador a bytecode  Otros compiladores y herramientas específicas: debuggers, applet viewer, p p gg , pp , generadoresde documentación, compiladores RMI, etc.

4

Pablo Castells

Escuela Politécnica Superior Universidad Autónoma de Madrid

Programación Orientada a Objetos (3er curso, grupo 31) 2. El lenguaje Java

06.03.12

Java SE 6 Platform

5

Java vs. C++
Java
Interpretado Totalmente portable Memoria dinámica Garbage collection No existen punteros Todos los métodos virtuales No tieneherencia múltiple Información completa sobre las clases en tiempo de ejecución Tratamiento genérico de tipos (wrappers)

C++
Compilado: más eficiente Aspectos no portables Memoria automática gestionada por el RTS Memoria dinámica gestionada por el programador Métodos virtuales y no virtuales Permite herencia múltiple Muy limitada (dynamic_cast) Punteros a void
6

Pablo Castells

EscuelaPolitécnica Superior Universidad Autónoma de Madrid

Programación Orientada a Objetos (3er curso, grupo 31) 2. El lenguaje Java

06.03.12

Java
Soporte estándar para interfaces de usuario: Swing g Soporte estándar para concurrencia Soporte estándar para objetos distribuidos: RMI Ejecutable en web browsers (applets) Homogeneidad del lenguaje Mejoras en diseño y sintaxis

C++
No incluido en ellenguaje: Microsoft MFC, etc. , No incluido en el lenguaje No incluido en el lenguaje: CORBA, ActiveX, etc.

Variedad de sintaxis y casos excepcionales Compatible con C
7

Elementos del lenguaje

Pablo Castells

Escuela Politécnica Superior Universidad Autónoma de Madrid

Programación Orientada a Objetos (3er curso, grupo 31) 2. El lenguaje Java

06.03.12

// package... // import...Ejemplo

class Persona { String nombre; int edad; void mostrarDatos () { System.out.println ("Nombre: " + nombre + "\nEdad: " + edad); }  Definición de clases }  Convención identificadores class MainClase {  Método main static void main (String args[]) {  Declaración y creación de objetos Persona x = new Persona (); j  Acceso a miembros de objetos x.nombre = "Juan Perez";  Strings x.edad= 25;  Concatenación de strings x.mostrarDatos ();  Packages }  Ambito de las variables }  Variables y métodos de instancia vs. de clase
9

class Persona { String nombre; int edad; void mostrarDatos () { System.out.println ("Nombre: " + nombre + "\nEdad: " + edad); } Persona (String str, int n) { nombre = str; edad = n; } } class MainClase { static void main (String args[]) {...
tracking img