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

Sesion 06 - POO en Java

Este documento describe la historia y características del lenguaje de programación Java. Explica que Java fue creado originalmente por Sun Microsystems para ser independiente de la plataforma y que ha evolucionado a través de diferentes versiones. También resume las principales características de Java como su orientación a objetos, portabilidad, seguridad e interpretación.
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 PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
41 vistas28 páginas

Sesion 06 - POO en Java

Este documento describe la historia y características del lenguaje de programación Java. Explica que Java fue creado originalmente por Sun Microsystems para ser independiente de la plataforma y que ha evolucionado a través de diferentes versiones. También resume las principales características de Java como su orientación a objetos, portabilidad, seguridad e interpretación.
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 PPTX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 28

Metodologías de Programación

Programación Orientada a Objetos en Java

Dr. Héctor M. Zelada Valdivieso


Email: [email protected]

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

Introducción al lenguaje de programación


Java
Fundamentos de Programación
Orientada a Objetos en Java

5 www.usat.edu.pe
Lenguaje de programación Java
• Historia de Java.

- Sun Microsystems empezó a desarrollar Java con el objetivo de crear


un lenguaje independiente de la plataforma, para ser usado en el
desarrollo de electrónica de consumo (dispositivos electrónicos
inteligentes como televisores, videos, equipos de música, etc.).
El proyecto original se denomino Green y se apoyó en el uso de C++ al
inicio, pero a medida que se progresaba en su desarrollo, el equipo
creador de Green comenzó a tener problemas especialmente de
portabilidad (Existía dependencia con la plataforma). Debido a esto, para
evitar estos problemas decidieron desarrollar su propio lenguaje.

- En agosto de 1991 nació un nuevo lenguaje orientado a objetos,


denominado OAK (que significa roble, cuentan sus inventores que se
puso en honor a un árbol que veían desde su despacho), pero como este
nombre ya existía tenían que cambiarlo.

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?

Es un lenguaje de programación orientada a objetos


que permite desarrollar aplicaciones portables, es
decir que sean independientes de la plataforma
donde se corran.

Al contrario que los compiladores tradicionales, que


convierten el código fuente en instrucciones a nivel
de máquina, el compilador java traduce el código
fuente java en un código intermedio denominado
bytecode o J-code que luego serán interpretados por
la máquina virtual java (JVM) para ejecutar el
programa.

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.

• Si tenemos un programa para la


plataforma Windows y si deseamos
hacerlo para que corra en otra
plataforma, necesitaremos el código
fuente para poder compilarlo para esa
otra 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.

• No son ejecutables y no se compilan como los programas en C o


C++, en su lugar son interpretados por la Máquina Virtual Java
(JVM). Gracias a ello son menos pesados ya que no tienen que
incluir código y librerías propias del sistema.

• El compilador Java traduce el código fuente en un código


intermedio denominado bytecode o J-code que luego serán
interpretados por la máquina virtual java (JVM) para ejecutar el
programa.

• El bytecode se puede ejecutar en cualquier plataforma, lo único


que se requiere es que la plataforma posea el interprete
adecuado (JVM) que se descargan de internet.

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.

g) Independiente de la plataforma o arquitectura neutra:


Un mismo programa en java podemos ejecutarla en diferentes sistemas operativos, sólo necesitamos tener la
JVM para esa plataforma. Este es una de las características más importantes de java que hace que sea
portable.

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

• Tipo de aplicaciones en Java.


a) Applet
Son programas Java pensados para ser colocados dentro de una página web. Pueden ser interpretados en el cliente
por cualquier navegador con capacidades Java. Estos programas se insertan en las páginas usando una etiqueta
especial (como también se insertan vídeos, animaciones flash u otros objetos).
Los applets son programas independientes, pero al estar incluidos dentro de una página Web, las reglas de éstas le
afectan. Normalmente un applet sólo puede actuar sobre el navegador. Hoy día mediante applets se pueden integrar
en las páginas web aplicaciones multimedia avanzadas (incluso con imágenes 3D o sonido y vídeo de alta calidad).
Las applet se ejecutan en el navegador web del cliente

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

• Kit de desarrollo de Java.


El kit de desarrollo de java (JDK), ahora llamado SDK (Standard Development Kit) contiene todas las clases que se
necesitan para desarrollar programas Java, además contiene herramientas de compilación (javac.exe), de ejecución
(Máquina Virtual Java : JVM) (java.exe), de depuración (jdb.exe), de documentación (javadoc.exe), etc.. Por lo que
para desarrollar programas en Java, se necesita obtener el SDK, el cual esta disponible de forma gratuita en
internet.
• Ediciones de Java.
J2SE : Aplicaciones sencillas, applets, etc.
J2EE : Aplicaciones empresariales con acceso a Base de Datos, Servlets, etc.
J2ME : Aplicaciones para dispositivos móviles.

www.usat.edu.pe
Lenguaje de programación Java

Entornos de desarrollo integrado (IDE)


Son entornos que permiten escribir programas, compilarlos, depurarlos, ejecutarlos
de manera sencilla. Para el lenguaje Java tenemos:
JGRASP
SUN ONE STUDIO
ECLIPSE
VISUAL J++
VISUAL J# (.NET)
JBUILDER
NETBEANS
VISUAL CAFE
ETC.

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

Nombre del atributo


Especificador
De acceso
De los atributos:

public
private
protected
no colocar nada

Tipo de dato del atributo

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

Nombre del método

Especificador Cuerpo del método.


De acceso Si el método retorna debemos
Del método Colocar return.
Cuando es void no se pone
public return
private
protected
no colocar nada Dentro de los paréntesis
Se pueden colocar
parámetros

22 www.usat.edu.pe
Fundamentos de POO en Java

Especificadores o modificadores de acceso

23 www.usat.edu.pe
Fundamentos de POO en Java Nombre del objeto

Objeto en Java Nombre del método constructor.


En Java se llama igual que la clase

Tipo de dato del objeto a crear


(clase)

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

Esp. Acceso nombreAtributo : tipoDato= Valor Inicial


Atributos

Esp. Acceso nombreMetodo (param1: tipoDato, param2: ipoDato, ..) :


Métodos tipoDatoRetorno

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.

• La programación orientada a objetos se centra en el objeto, por lo que dado un problema


debemos identificar los objetos que intervienen y para cada objeto sus atributos y métodos.

• En el diseño, haremos un Diagrama de Clases según UML.

• 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.

• CEBALLOS, F. Java 2. Curso de programación. 2° Edición. Alfaomega Ra-Ma. 2000.

• PÉREZ, J. Problemas resueltos de programación en JAVA. Thomson Learning. España. 2003

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

También podría gustarte