0% encontró este documento útil (0 votos)
0 vistas14 páginas

Caracteristicas de Java

Tutorial sobre las caracteristicas de java

Cargado por

Javi
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
0 vistas14 páginas

Caracteristicas de Java

Tutorial sobre las caracteristicas de java

Cargado por

Javi
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Curso

Programación en Java

Tema 1
Características de Java
Genealogía del lenguaje
 Sun Microsystems (Naughtom y Gosling), 1991: Proyecto de lenguaje
para dispositivos, Oak.
 1995: Primera versión JDK 1.0.
 1997: JDK 1.1.
 1998: JDK 1.2 (Java 2).
 2000 y marzo 2002: JDK 1.3, JDK 1.4. Versiones con biblioteca en
constante crecimiento y depuración de errores de Java 2.
 2004: JDK 1.5 (Java 5). Clases genéricas, bucle "for each", args
variables, enumeraciones.
 En la actualidad: JDK 1.6.

2
Componentes de J2SE v1.4

3
Características generales (I)

 Simplicidad.
 Sintaxis parecida a C++, lo que implica una rápida curva de
aprendizaje.
 Orientación a objetos.
 Lenguaje totalmente orientado a objetos.
 Portabilidad.
 Necesidad de un lenguaje multiplataforma para las aplicaciones en
Internet a través de clientes web (navegador).
 Independiente de la plataforma."Escribir una vez, ejecutar en
cualquier parte".
 El código compilado de Java se puede ejecutar sobre cualquier
plataforma que implemente una Máquina Virtual Java (JVM).

4
Características generales (II)

 Concurrencia (multihilo, multi-thread).


 Permite la ejecución de varios hilos de proceso (thread) que se
comunican entre si para permitir su colaboración.
 La concurrencia permite por ejemplo:
 Evitar las esperas de la interfaz de usuario.
 Recibir información de forma asíncrona (descarga de archivos).
 Aplicaciones multisuario.
 Aplicaciones multiproceso si el hardware y los sistemas operativos lo
permiten.

 Distribuido y dinámico.
 Carga dinámica de bibliotecas de clases.
 Aplicaciones con objetos distribuidos RMI (Remote Method
Invocation), CORBA, Enterprise JavaBeans (EJB).

5
Características generales (III)

 Seguridad
 Tres componentes del modelo de seguridad:
 Verificador de bytecode.
 Cargador de clases.
 Security Manager
 Seguridad en los applets
 Applets firmados.
 APIs de criptografía, certificados digitales, sistema de claves,
generador de claves.

6
El modelo de compilación (I)

Otras clases Java

Editor de texto
Cargador de clases

[Link]
Verificador de
java HolaMundo Memoria
bytecode

javac
[Link]

Interprete de
bytecode

[Link]

7
El modelo de compilación (II)

 Edición del archivo fuente con un editor de texto.


import [Link].*;
class HolaMundo {
public static void main(String args[]) {
[Link]("¡Hola mundo!");
Date d = new Date();
[Link]("Hoy es " + d);
}
}

8
El modelo de compilación (III)

 Compilación
 javac [Link]
 [Link] genera bytecode independiente de la plataforma y
ejecutable en una JVM.
 Se genera un archivo .class por cada clase presente en la unidad de
compilación.
 Posibles ajustes necesarios:
 Variable de entorno PATH
 Variable de entorno CLASSPATH

9
Modelo de compilación (IV)

 Ejecución
 Ejecución del archivo .class mediante el interprete [Link]
(java HolaMundo).
1. Cargador de clases.
2. Verificador de bytecode.
3. Unidad de ejecución
 Interpretación = merma de eficiencia.
 Compilador JIT (Just In Time).
 Convierte el bytecode a código nativo que ejecuta la JVM.
 Compiladores en código nativo.
 Perdida de compatibilidad.

10
Modelo de compilación (V)
 Entornos de desarrollo Java.
 JCreator.
 JBuilder.
 NetBeans.
 BlueJ.
 Eclipse.

 Algunos errores de compilación frecuentes


 javac Bad command or file name.
 [Link]: ';' expected
[Link]("¡Hola mundo!")
^
 [Link]: cannot resolve symbol
symbol : method printl ([Link])
location: class [Link]
[Link]("¡Hola mundo!");
^
 Exception in thread "main" [Link]:
HolaMundo

11
Arquitectura de la Máquina Virtual Java (I)

 JVM: capa interpuesta entre el


sistema operativo y las clases
Java.
 Interpreta el bytecode a las
órdenes nativas de un entorno
(hardware o software)
determinado.
 Dos capas:
 Dependiente de la plataforma: adaptador.
 Independiente de la plataforma: interfaz de portabilidad.
 Sólo es necesario escribir un nuevo adaptador para cada plataforma.

12
Arquitectura de la Máquina Virtual Java (II)

13
Utilidades principales del SDK

 javac.
 Compilador de Java. Toma una unidad de compilación (.java) y
convierte las clases contenidas en archivos .class.

 java.
 Interprete Java. Verifica, carga y traduce el bytecode de un archivo
.class.

 appletviewer.
 Interprete que ejecuta los applets contenidos en un archivo HTML.

 javadoc.
 Crea documentación en formato HTML a partir del código y los
comentarios de un programa Java.

14

También podría gustarte