Este documento presenta una introducción a los fundamentos del lenguaje de programación Java. Explica brevemente la historia y el origen de Java, sus características principales como la portabilidad y orientación a objetos, y conceptos básicos como variables, tipos de datos, clases, herencia y paquetes. También introduce conceptos como la máquina virtual Java, compilación y ejecución de código.
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Java Fundamentos Lenguaje Programación Módulo 1
1. Java – Modulo 1
Introducción y Fundamentos del
lenguaje de programación Java
2. Contenido
· Características del lenguaje.
· Breve historia (origen y versiones).
· Variables y Tipos de Datos.
· Estructuras de Decisión.
· Ciclos iterativos.
· Datos estructurados (vs. Clases).
· Introducción a la POO.
· Uso básico de la herramienta de desarrollo.
3. Breve Historia
Java fue diseñado en 1990 por James
Gosling, de Sun Microsystems
Fue diseñado antes de que diese comienzo la
era World Wide Web.
Software para dispositivos electrónicos:
calculadoras, microondas y la televisión
interactiva.
Lenguaje que independiente de la
plataforma
4. Breve Historia
El objetivo fue crear un nuevo lenguaje de
programación lo más sencillo posible, con
el objeto de que se pudiese adaptar con
facilidad a cualquier entorno de ejecución.
Se conjuntaron las características esenciales
que debía tener un lenguaje de
programación moderno y potente.
5. ¿Por qué Java?
Portabilidad: tanto del código fuente como del
“bytecode”.
Más soporte en el lenguaje. Una amplia librería de
Clases.
Manejo de Errores.
No usa apuntadores. (garbage collection)
El manejo de threads es parte del lenguaje.
Carga dinámica del las clases y una “caja” segura
para le ejecución de código remoto.
6. ¿Qué es Java?
“ Es un lenguaje simple, orientado a
Objetos, Distribuido, interpretado, robusto,
seguro, de arquitectura neutral, portable, de
alto rendimiento, multihilos, y dinámico”
- Sun
7. ¿Qué es Java?
Un lenguaje de Programación
Definido por Gosling, Joy y Steele en la especificación
del lenguaje Java.
Una plataforma
Una definición de una máquina virtual (JVM).
Ambientes de ejecución para diferentes “hardwares”.
Una librería de clases
Un conjunto estándar de APIs () : GUI,
almacenamiento de datos, E/S, redes, etc.
9. Caracteristicas (cont...)
Simple
Fácil de aprender, sintaxis de C/C++, versión
simplificada de C++.
Seguro
Los applets pueden ejecutarse sin temor a virus
o a la violación de acceso a información
privada.
Portable
Generación de código intermedio: Bytecode
10. Caracteristicas (cont...)
Robusto
Localización temprana de errores
Minimización de errores comunes de programación.
Verificaciones a tiempo de compilación y ejecución.
Fuertemente tipado.
Multihilos
Permite hacer programas que realicen varias cosas al
mismo tiempo. Facilita la creación de sistemas
interactivos.
De Arquitectura neutral
11. La máquina Virtual Java (JVM)
Puede verse como una computadora abstracta que
es definida por una especificación. Es una
máquina imaginaria que se implementa por
software .
Podemos estar hablando de:
La especificación abstracta.
Una implementación concreta
Una instancia de tiempo de ejecución
Sun publicó las especificaciones para la JVM para
asegurar la portabilidad de las aplicaciones.
12. La máquina Virtual Java
Cada aplicación Java se ejecuta dentro de
una instancia de tiempo de aplicación de
alguna implementación concreta para la
especificación abstracta.
13. La máquina Virtual Java
Código fuente
Compilador Java
Byte-codes
Win32 JVM
Código máquina
Win32
Macintosh JVM UNIX JVM
Código máquina
Macintosh
Código máquina
UNIX
14. Ivette C. Martínez - Héctor Palacios
El API de Java
Es una colección de “partes” de software
que brindan al usuario “utilidades”. Ejm:
GUI.
Está formado por librerías o paquetes
relacionados.
17. Declaraciones
Declaración de Variables
<tipo> <variable>;
<tipo> <var1>, <var2>, ..., <varn>;
<tipo> <var1> = <valor>;
Ejemplos
int x,y,z;
int x = 9;
boolean terminar = false;
Cliente = new Cliente();
18. Asignaciones
Asignaciones
<tipo> <variable> = <valor>;
<tipo> <variable>;
<otras instrucciones>...
<variable> = <valor>;
Ejemplo
int x = 4; //Declaracion con asignación
x = 9; //Se asume que x está definida
c1 = new Cliente(); //Se asume que Cliente
//y c1 están definidos
19. Tipos de Datos
Tipos primitivos:
boolean true o false
char unicode! (16 bits)
byte entero de 8 bits con signo.
short entero de 16 bits con signo.
int entero de 32 bits con signo.
long entero de 64 bits con signo.
float,double IEEE 754 floating point
20. Otros tipos de datos.
Tipos compuestos
Clases
Arreglos
Los strings son soportados mediante una
clase built-in class denominada String.
21. Conversiones de tipos
Conversión entre los tipos enteros y punto
flotante.
Incluye char
No hay conversión automatica con el tipo
boolean!
Las conversiones se pueden forzar mediante
una operación de casting – con la misma
sintaxis de C/C++.
int i = (int) 1.345;
23. Comentarios
// comentario
Los caracteres desde // hasta el final de la línea
son ignorados.
/* comentario */
Los caracteres entre /* y */ son ignorados
/** comentario */
Los caracteres entre /** y */son ignorados y se
incluyen en la generación autómatica de la
documentación.
24. Identificadores
Nombre dado a una variable, un método o una
clase.
Comienzan con una letra Unicode (incluyendo _
and $) y seguido de letras y digitos.
Pueden ser de cualquier longitud.
Ejemplos:
Apellido
Hora
$PorMenos
25. Paquetes
Se usan para encapsular los datos de manera
automática.
Los paquetes de clases se cargan con la
palabra clave import.
Ejemplo:
import java.Date;
import java.awt.*;
import miPaquete.miClase;
26. Tipos de Clases en Java
abstract. Una clase abstracta no se instancia, sino
que se utiliza como clase base para la herencia.
final. Una clase final se declara como la clase que
termina una cadena de herencia.
public. Las clases public son accesibles desde
otras clases, bien sea directamente o por herencia.
Para acceder desde otros paquetes, primero tienen
que ser importadas.
27. Niveles de acceso a métodos y
atributos
public. Cualquier clase desde cualquier lugar
puede acceder a las variables y métodos.
protected o friendly. Sólo las subclases
de la clase y nadie más pueden acceder a las
variables y métodos.
Private. Las variables y métodos de instancia
privados sólo pueden ser accedidos desde dentro
de la clase.
28. Ejemplo herencia
public class Articulo { // clase padre
public float precio=0;
...
public void setPrecio(float elPrecio) {
precio = elPrecio;
}
...
public float getPrecio() {
return precio;
}
}
//los métodos y atributos de
Articulo son heredados a Pelicula
public class Pelicula extends Articulo {// clase hijo
public void setDescripcion(String descrip) {
descripcion = descrip;
}
...
public String getDescripcion() {
return descripcion;
}
}