DE PROGRAMACIN
ORIENTADO A
OBJETOS
Qu es Java?
Un poco de Historia
Tecnologa JAVA
Compilador/enlazador
Cdigo ejecutable
Compilador/enlazador
de S.O. X
Compilador/enlazador
de S.O. Y
el S.O.
el S.O.
X
Y
Compilador
Programa ejecutado
Cdigo interpretable
Interprete
Interpretes y portabilidad
Lenguajes
interpretados
Lenguajes
compilados
Nivel
ejecucin
Ejecutable
Windows
Ejecutable
Unix
C, C++
Ejecutable
Mac
Intrprete
Windows
Cdigo
Java
Cdigo
nico a
interpretar
Java
Bytecodes
Intrprete
Unix
Intrprete
Mac
Cdigo Fuente
(Archivo.java)
Compilador
(javac)
Archivo compilado
Bytecode
(Archivo.class)
JVM
(java)
Programa
en ejecucin
Qu ventajas tengo
como desarrollador?
Comenzar rpidamente.
Escribir menos cdigo, 4 veces menos que
en C++.
Desarrollar programas ms rpidamente.
Eliminar dependencias de la plataforma.
Escribir una vez, ejecutar en cualquier parte.
Game Consoles
TVs
Robots
PDAs
Webcams
Consumer ElectronicsCash Registers
Medical Equipment
Telescopes
STBs
Lottery Terminals
IDEs de desarrollo :
Mostrar informacin
La regla : ESCRIBIR
El smbolo :
En seudocdigo
En diagrama de flujo
La sentencia : cout
En C++
La clase : System
En Java
Variables
Tipo de dato :
Identificador :
Valor :
Fundamentos de la Programacin
Orientada a Objetos
1.Antecedentes de la POO
Que
permita
expresarlos
procedimientos y funciones
mediante
Ventajas de POO
a) Uniformidad.- Ya que la representacin de
los objetos que lleva, implica tanto el anlisis
como el diseo y la codificacin de los mismos.
Esto quiere decir que nos permite una mejor
integracin entre las diferentes etapas del
desarrollo de un proyecto informtico.
b) Flexibilidad.Al tener relacionado los
procedimientos que manipulan los datos con los
datos a tratar, cualquier cambio que se realice
sobre ellos quedar reflejado automticamente
en cualquier lugar donde estos aparezcan.
Modularidad.
Jerarqua.
Encapsulamie
nto.
Polimorfismo.
Abstraccin
Modularidad
Dentro de la programacin orientada a objetos, la
modularidad juega un papel muy importante. Una
vez que hemos representado una situacin del
mundo
real
en
un
programa,
tenemos
regularmente como resultado, un conjunto de
objetos de software que constituyen la aplicacin.
La modularidad, nos permite poder modificar las
caractersticas de la clase que definen a un objeto,
de forma independiente de las dems clases en la
aplicacin. En otras palabras, si nuestra aplicacin
puede
dividirse
en
mdulos
separados,
normalmente clases, y estos mdulos pueden
compilarse y modificarse sin afectar a los dems,
entonces dicha aplicacin ha sido implementada
Encapsulamiento.
Tambin referido como ocultamiento de la
informacin, el encapsulamiento es la propiedad de
la orientacin a objetos que nos permite asegurar
que la informacin de un objeto le es desconocida a
los dems objetos en la aplicacin. Es muy
frecuente referirse a los objetos de software como
cajas negras, esto se debe principalmente a que no
necesitamos, dentro de la
programacin orientada a objetos, saber como esta
instrumentado un objeto para que este interacte
con los dems objetos.
Jerarqua
Una vez que hemos definido una clase, por
ejemplo la clase bicicleta, con sus atributos y
mtodos, tal vez necesitemos definir una nueva
clase especfica para las bicicletas de carreras.
Es obvio que sta nueva clases compartir
elementos en comn con la clase bicicleta, es
decir, la clase bicicleta de carreras ser un
subconjunto de la clase bicicleta.
Polimorfismo
Muchas veces es necesario que un mismo
comportamiento o accin se realice de diferentes
maneras, por ejemplo, supongamos que deseamos
implementar a la clase mamferos, supongamos
tambin que uno de los mtodos que deseamos
implementar para esta clase, es el que permita a tales
mamferos desplazarse de forma natural. Nos
encontraremos entonces con que para algunos
mamferos el desplazamiento se realizar por medio
de caminar, como es en el caso de las personas, para
otros el desplazamiento natural ser nadar, como en
el caso de los delfines e inclusive para otros, el
desplazamiento se lograr por medio de volar, como
sucede con los murcilagos. En otras palabras, un
mismo
comportamiento,
en
este
caso
el
Actividad
Investigar los siguientes temas:
Definicin de una clase en java
Modificadores de clase
Representacin UML de una clase
Declaracin de objetos
Modificadores de acceso en Mtodos y
Atributos de una clase.
Sobrecarga de Mtodos
Constructores y destructores
Ejemplos:
Se desea calcular el sueldo de un empleado,
teniendo su nombre, apellido, horas trabajadas,
costo por hora de 5 dlares y bajo las siguientes
condiciones:
Horas trabajadas<=40 no tiene bonificacin
Horas Trabajadas<=50, 20% de bonificacin
Horas trabajadas<=60, 30% de bonificacin
Horas trabajadas >=60, 40%
Nadie puede ganar menos de 100 y mas de 400
dlares.
Empleado
-Nombre
-Apellido
-HorasTrabajadas
-Sueldo
+EstablecerNombre()
+EstablecerApellido()
+EstablecerHorasTrabajad
as()
+DevolverNombre()
+DevolverApellido()
+DevolverHorasTrabajada
s()
+CalcularSueldo()
Ejercicio:
1.-Cree una aplicacin visual en Java basado en POO
que cambie una cantidad de dlares a soles y
muestre el tipo de cambio resultante.
2.- Cree una aplicacin visual en Java basado en
POO que calcule el descuento por faltas de un
trabajador, si se sabe que por cada inasistencia la
empresa descuenta el doble del salario de un da,
finalmente muestre el descuento y el neto a
percibir.