6. Temario
➢ Programación orientada a objetos
➢ Java
➢ Características de Java
➢ Entornos de desarrolla Java
➢ Compilación y ejecución
➢ Java Virtual Machine
➢ Principios de la programación orientada
a objetos
7. Logro
Al finalizar esta sesión el estudiante,
implementa un programa en Java
utilizando la plataforma Java
Standard Edition.
8. Programación Orientada a
Objetos
• Metodología que define los programas en términos de "clases de
objetos", objetos que son entidades que combinan estado
(datos o atributos), comportamiento (procedimientos o
métodos) e identidad (propiedad del objeto que lo diferencia del
resto).
• Tomas las mejores ideas de la programación estructurada y
modular combinándola con nuevos y poderosos conceptos.
9. Clase
• Una clase describe los atributos (propiedades) y métodos
(comportamientos) en común de un conjunto de objetos.
• Mediante una clase se puede crear o instanciar objetos del
mismo tipo.
Celular
Código
Marca
Color
Peso
Tamaño
hacerLlamada()
almacenarContacto()
emitirTimbrado()
bloquearPantalla()
Clase
Atributos
Métodos
10. Objeto
• Un objeto es una instancia (variable) de una Clase, por lo que se puede
definir como la unidad básica para la construcción de un programa.
• Un objeto tiene: estado, comportamiento e identidad
Celular: iPhone 3654
Código: cbx1415
Marca: Apple
Color: Blanco
Peso: 50 gr
Tamaño: 12 cm
hacerLlamada()
almacenarContacto()
emitirTimbrado()
bloquearPantalla()
11. Java
• Java es un lenguaje de programación orientado a objetos creado a
principios de los años 90 por Sun Microsystems (empresa que
posteriormente fue comprada por Oracle).
• Su ámbito de aplicación es tan amplio que Java se utiliza tanto en
móviles como en electrodomésticos. Muchos programadores también
utilizan este lenguaje para crear pequeñas aplicaciones que se insertan en
el código HTML de una página para que pueda ser ejecutada desde un
navegador.
• Nació con el objetivo de ser un lenguaje de programación de estructura
sencilla que pudiera ser ejecutado en diversos sistemas operativos.
•
12. Características de Java
Lenguaje simple Orientado a objetos Distribuido Arquitectura neutra
Robusto Interpretado Portable
De altas
prestaciones
Multitarea Dinámica
13. Entorno de desarrollo Java
• Para desarrollar aplicaciones en Java se necesita herramientas
de desarrollo como JDK, que permita compilar, empaquetar,
depurar y ejecutar los programas. Sin embargo es necesario
además un editor de texto para escribir el código fuente, es decir
un IDE (Integrated Development Environment) específico para
Java.
15. Compilación y ejecución
• Java es un lenguaje compilado e interpretado. El compilador se
encarga de convertir el código fuente de un programa en un
código intermedio denominado bytecode, el cual es
independiente de la plataforma en el que se trabaja, este
código se ejecuta por el intérprete de Java que se encuentra
en la Máquina Virtual de Java.
17. Java Virtual Machine
• En cada plataforma existe una máquina virtual específica. De este modo, el
bytecode se ejecuta de forma correcta en diferentes plataformas, pues en
cada una de esas plataformas existirá la máquina virtual adecuada. Con
este mecanismo se consigue la famosa multiplataforma de Java.
18. Modificadores de Acceso
• Los modificadores de acceso definen niveles de visibilidad entre miembros
(variables y métodos) de una clase y otros objetos.
• Sintaxis en los atributos:
• Sintaxis en los métodos:
modificadorDeAcceso tipo nombreVariable;
modificadorDeAcceso tipo nombreMetodo( ){
…
}
19. Modificadores de acceso para
variables y métodos
Puede ser accedido por
métodos de
Un miembro tiene acceso a
public protected omitido private
La misma clase Si Si Si Si
Subclases del mismo
paquete
Si Si Si -
Otras clases del mismo
paquete
Si Si Si -
Subclases en otros
paquetes
Si Si - -
Otras clases de otros
paquetes
Si - - -
20. Estructura de una clase en Java
public class Empleado{
private String nombres, apellidos;
private double sueldo;
private int edad;
public Empleado(){
}
public Empleado(int x){
}
public void trabajar(String n, int horas, double tarifa){
…
}
public double asistir(int faltas){
…
return 0;
}
}
Clase
Atributos
Métodos
Métodos
Constructores
21. Principios de la Programación
Orientada a Objetos
• Representación de las características esenciales de un objeto. Se separa las
propiedades más importantes, de las que no lo son.
Abstracción
• Permite subdividir una aplicación en partes más pequeñas (llamadas módulos),
cada una de las cuales debe ser tan independiente como sea posible.
Modularidad
• Se refiere al empaquetamiento de las variables de un objeto con la protección
de sus métodos
Encapsulamiento
• Mecanismo que permite la definición de una clase a partir de la definición de
otra ya existente.
Herencia
• Consiste en declarar y definir varios métodos con el mismo nombre, pero con
diferente número y/o tipo de argumentos
Polimorfismo
22. Ejemplo
• Calcular el área de un cuadrado, de un rectángulo y un triángulo, aplicando
abstracción, modularidad, encapsulación, herencia y polimorfismo.
• Considere que el área de un triangulo se puede obtener con las siguientes
formulas:
• 𝑎𝑟𝑒𝑎 = 𝑠 𝑠 − 𝑙𝑎𝑑𝑜1 𝑠 − 𝑙𝑎𝑑𝑜2 (𝑠 − 𝑙𝑎𝑑𝑜3)
• 𝑎𝑟𝑒𝑎 =
𝑙𝑎𝑑𝑜1∗ℎ
2
• 𝑎𝑟𝑒𝑎 =
1
2
𝑙𝑎𝑑𝑜1 ∗ 𝑙𝑎𝑑𝑜2 ∗ 𝑠𝑒𝑛(𝐴)
24. Resumiendo…
• ¿Qué es Java?
• ¿Cuáles son sus principales características?
• ¿Por qué se dice que Java tiene arquitectura neutra?
• ¿Cómo funciona Java Virtual Machine (Maquina virtual de
Java)?