Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Polimorfismo
Programación
Orientada a
Objetos
Dra. Rocío Aldeco
Tipo especial de relación entre clases.
Herencia
Genera jerarquías de generalización/especialización.
• Atributos
• Métodos
Tipos de
Herencia Herencia La herencia como reutilización de conceptos: Esto
de ocurre cuando una clase derivada sobrescribe el
interfaz comportamiento definido por la clase base.
Aunque no se comparte ese código entre ambas
clases, ambas comparten el prototipo del
método (comparten el concepto).
Simple: Una clase base Multinivel: clase base e
o padre. intermediaria.
Clase base
Clase base
Tipos de
Herencia Clase
Clase derivada intermediaria
Clase derivada
● Jerárquica: única Múltiple: Más de una clase
clase base. base
Tipos de
Herencia
Como se modelaría una
aplicación que reciba los
Ejemplo parámetros de las diferentes
figuras en 2D. Esto usando el
concepto de herencia.
Ventajas
Se ahorra código
Permite reutilizar código
extendiendo su funcionalidad
Compartición de código
Herencia Consistencia de interfaces
Construcción de componentes
Prototipado rápido
Polimorfismo
Ocultación de información
Desventajas
Se ahorra código
Se introduce una fuerte dependencia en
la clase hija respecto a la clase padre
Puede dificultar la reutilización
Un cambio en la clase padre puede tener
efectos imprevistos en las clases hijas
Herencia Un objeto de una clase hija puede tener
un comportamiento inconsistente con lo
esperado de un objeto de la clase padre
Se establece una jerarquía que si se
cambia el criterio de clasificación puede
acarrear muchas modificaciones
Velocidad de ejecución debido a la
sobrecarga de paso de mensajes
Complejidad del programa
Se indica usando la palabra reservada extends
class Punto3D extends Punto2D
Visibilidad:
Los miembros privados de la superclase no son visibles
desde la subclase
Los miembros públicos de la superclase son visibles y Herencia en
siguen siendo públicos en la subclase
Java
Se puede acceder a los miembros de la superclase usando la
palabra reservada super
Si una clase se declara como final no se puede heredar de
ella
En java, todas las clases heredan implícitamente de la clase
Object.
Ejemplo - Herencia en Java
salarioMensual=0;
}
}
La sobreescritura de métodos (o override) nos permite
redefinir un método que heredamos para que este
funcione de acuerdo a las necesidades de una clase hija
y no a lo definido por la clase padre.
prototipo método1;
}
Ejemplo - Interfaces
Ejemplo - Interfaces
Polimorfismo
Polimorfismo es una palabra de origen griego
que significa "muchas formas".
Tipos Enumerados
Anotaciones
Un paquete Java tiene los siguientes atributos:
Atributos Los nombres de paquete que comienzan con el nombre java.* y javax.* son
reservados.
com.dominio_empresa.utilidades Convenciones
import paquete.nombredeclase;
Un ejemplo del uso de paquetes el la biblioteca de clases de
Importar paquetes Java
El paquete en Java se declara primero:
La declaración del paquete debe estar al
principio del archivo Java, es decir, es la
primera línea que se debe ver en nuestro
Recomendaciones código o archivo .java. Primero se
declara el paquete, y luego podremos
poner los imports y luego las clases,
interfaces, métodos, etc.
Cada punto en la ruta del paquete es
una nueva carpeta: Cuando se escribe
la ruta del paquete en Java, se pueden
especificar una ruta compleja usando el
punto .
Buenas prácticas para nombrar paquetes en
Java: Los paquetes en java se declaran siempre
en minúsculas y en caso de ser necesario las
Recomendaciones palabras se separan usando un guión bajo _
Si no se declara un paquete (paquete por
defecto): Si decidimos no declarar un paquete
para nuestra clase, ésta quedará en un paquete
que se conoce como paquete por defecto
(default package).
En este paquete estarán todas las clases que no
tengan un paquete declarado.
Siempre es recomendable declarar un paquete a
cada componente de nuestro programa.
Ejemplo
Ejemplo
Ejemplo
Compilando...
Compilando
Compilando
Compilando
Documentación
https://docs.oracle.com/javase/1.5.0/docs/tooldocs/windows/javadoc.html
Lectura
Javadoc es una utilidad de Oracle para la generación de
documentación de APIs en formato HTML a partir de
código fuente Java.
https://docs.oracle.com/javase/1.5.0/doc
s/tooldocs/windows/javadoc.html
Java The Complete Reference Ninth Edition, Oracle Press.
¿Cómo programar en Java?. Deitel y Deitel, 7ª edición, Pearson,
Prentice Hall.
Referencias Object-Oriented Thought Process, The (Developer's Library), Matt
Weisfeld, 5th Edition.