Sesion 06 - POO en Java
Sesion 06 - POO en Java
www.usat.edu.pe
www.usat.edu.pe
Control de
asistencia
2 www.usat.edu.pe
Objetivos:
• Comprende la aplicación de la
Metodología de Programación Orientada a
Objetos en Java.
3 www.usat.edu.pe
Contenidos
5 www.usat.edu.pe
Lenguaje de programación Java
• Historia de Java.
www.usat.edu.pe
Lenguaje de programación Java
• …Historia de Java.
- Como OAK ya existía, OAK se convirtió en Green ,pero luego lo llamaron en
1995 Java (Cuentan que era un tipo de café que estaban tomando en una
cafetería donde se reunieron para definir el nombre. Por eso el icono de Java es
una taza de café). Existen otras versiones con respecto a este nombre.
- SUN lanzó el entorno JDK ( Kit de Desarrollo de Java) 1.0 en 1996, primera
versión del Kit de Desarrollo de dominio público que se convirtió en la primera
especificación formal de la plataforma Java. Desde entonces se han lanzado
diferentes versiones, aunque la primera comercial se denominó JDK 1.1 y se
lanzó a principios de 1997.
- En Diciembre de 1998, Sun lanzó el JDK 1.2 que luego lo renombro como
Java2, y el nombre "J2SE" (Java 2 Platform, Standard Edition), reemplazó a - JDK 1.0 (1996)
JDK para distinguir la plataforma base de J2EE (Java 2 Platform, Enterprise - JDK 1.1 (1997)
Edition) y J2ME (Java 2 Platform, Micro Edition). - J2SE 1.2 (1998)
- J2SE 1.3 (2000)
- En el 2010 fue adquirida por Oracle - J2SE 1.4 (2002)
- J2SE 5.0 o 1.5 (2004)
- Han seguido saliendo nuevas versiones - Java SE 6 (2006)
- …
- Java SE 21
- …
www.usat.edu.pe
Lenguaje de programación Java
• ¿Qué es Java?
www.usat.edu.pe
Lenguaje de programación Java
• Proceso de compilación de C++
Proceso de compilación de un programa C++
• No es independiente de la plataforma.
Son totalmente ejecutables y esto
hace que no sea independiente de la
plataforma y que su tamaño se
dispare ya que dentro del código final
hay que incluir las librerías de la
plataforma.
www.usat.edu.pe
Lenguaje de programación Java
• …Proceso de compilación de Java.
Proceso de compilación de un programa java.
• Es independiente de la plataforma.
www.usat.edu.pe
Lenguaje de programación Java
• Características de Java.
a) Sencillo:
- Sólo necesitamos conocer los conceptos y características de la POO.
- Hereda la características de C y C++.
- Incorpora la gestión automática de memoria.
- Elimina el uso de punteros.
- No soporta Herencia múltiple.
b) Orientado a objetos:
- Es un lenguaje de programación orientado a objetos.
- Podemos crear objetos.
- Podemos construir clases.
- Soporta las características de la programación orientada a objetos. (Herencia, Encapsulamiento, Polimorfismo,
etc.)
www.usat.edu.pe
Lenguaje de programación Java
• …Características de Java.
c) Distribuido:
- Podemos crear aplicaciones que pueden funcionar en red.
- Java maneja protocolos TCP/IP
d) Interpretado:
- Para ejecutar el programa necesitamos de la JVM que se encargará de interpretar los bytecodes.
- Trabaja con JIT (Just In Time) que traducen dinámicamente los bytecodes en código nativo y lo guarda en una
caché, para su reutilización y con ello obtener una gran eficiencia de ejecución.
e) Robusto:
- Busca que un programa sea fiable (no tenga errores).
- Incorpora el manejo de excepciones (errores), gestión automática de memoria (recolector de basura) y elimina el
uso de punteros.
www.usat.edu.pe
Lenguaje de programación Java
• …Características de Java.
f) Seguro:
Incorpora mecanismos de seguridad que garantice que el programa no afecte al sistema donde se esta
ejecutando.
h) Portable:
- Java es un lenguaje de alto nivel que permite escribir tanto programas convencionales como aplicaciones para
internet .
- La misma aplicación Java se puede ejecutar en diferentes plataformas y funciona de la misma manera.
- En Java el tipo de dato Char ocupa 2 bytes de tal forma que pueda soportar caracteres de varios alfabetos.
www.usat.edu.pe
Lenguaje de programación Java
• …Características de Java.
i) Alto rendimiento:
La máquina virtual Java trabaja JIT (Just In Time) de tal forma que lo que interpreta lo almacena en la caché del
computador para poder reutilizarlo, mejorando el rendimiento en la ejecución.
j) Multihilo (multiprocesos):
Incorpora clases para construir aplicaciones que ejecuten tareas de manera simultánea (multiThreading).
k) Dinámico:
En tiempo de ejecución Java carga sus clases a medida que se necesitan.
www.usat.edu.pe
Lenguaje de programación Java
www.usat.edu.pe
Lenguaje de programación Java
• …Tipo de aplicaciones en Java.
b) Aplicaciones de consola
Son programas independientes al igual que los creados con los lenguajes tradicionales que se ejecutan en entorno
consola como DOS y no usan GUI.
c) Aplicaciones gráficas
Aquellas que utilizan clases con capacidades gráficas (como awt y swing por ejemplo). Utilizan controles y se
programa en base a eventos.
d) Servlets
Son aplicaciones que se ejecutan en un servidor de aplicaciones web y que como resultado de su ejecución resulta
una página web.
www.usat.edu.pe
Lenguaje de programación Java
www.usat.edu.pe
Lenguaje de programación Java
www.usat.edu.pe
Fundamentos de POO en Java
Clase en Java
18 www.usat.edu.pe
Fundamentos de POO en Java
Nombre del paquete donde se ubicará
la Clase Rectángulo
Nombre de la Clase
Clase en Java
19 www.usat.edu.pe
Fundamentos de POO en Java
Paquete donde se encuentra la Clase
Clase en Java Rectángulo
Nombre de la Clase
Especificador
De acceso
De la clase
public
o no colocar nada
Palabra reservada
Para indicar que
Es una clase.
20 www.usat.edu.pe
Fundamentos de POO en Java
Atributos en Java
public
private
protected
no colocar nada
21 www.usat.edu.pe
Fundamentos de POO en Java
Tipo de dato de retorno
Del método. Sino retorna
Métodos en Java Se pone void
22 www.usat.edu.pe
Fundamentos de POO en Java
23 www.usat.edu.pe
Fundamentos de POO en Java Nombre del objeto
Palabra reservada
Mensaje que se le da al objeto Para crear nuevos objetos
objRec para que ejecute sus métodos
setBase, setAltura y calcularArea
24 www.usat.edu.pe
Fundamentos de POO en Java
Diagrama de clases – UML (Lenguaje de Modelado Unificado)
nombrePaquete::NombreClase
Nombre
Especificador de acceso: Público (+), Privado (-), Protegido (#), por omisión (si no se indica nada)
Alcance de los miembros (atributos y métodos) de una clase:
- De clase: No se necesita crear un objeto para acceder a los atributos y métodos de la clase. Son compartidos por
todos los objetos creados de esa clase. En el diagrama se indica subrayando todo el atributo o todo el método, se
caracteriza por que el valor de los atributos permanece estático, es el mismo para todos los objetos que se creen, se
usa por ejemplo para llevar un control de la cantidad de objetos creados de una clase determinada. En java se indica
con la palabra static
- De instancia o de objeto: Se necesita crear un objeto para acceder a los atributos y métodos de la clase. En el
diagrama se indica esto no subrayando los atributos o métodos.
25 www.usat.edu.pe
Conclusiones
• Java es un lenguaje de programación orientada a objetos que nos proporciona muchas
ventajas a la hora de crear aplicaciones con él.
• Existen diferentes tipos de especificadores de acceso para los atributos y métodos: private,
public, protected o sin especificador.
26 www.usat.edu.pe
Referencias
• DEITEL, Harvey, M.; DEITEL, Paul J. Como programar en Java. Pearson Educación. México. 2004.
27 www.usat.edu.pe
Dr. Héctor Miguel Zelada Valdivieso
[email protected]
http://www.facebook.com/usat.peru
https://twitter.com/usatenlinea
https://www.youtube.com/user/tvusat
https://plus.google.com/+usateduperu
www.usat.edu.pe