








Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
La herencia en java, una relación de generalización/especialización que permite a una clase (subclase o clase hija) heredar la estructura de otra (superclase o clase padre). La ventaja fundamental de la herencia es la reutilización/centralización de código, lo que evita la duplicidad y disminuye el volumen de código, facilitando el mantenimiento y permitiendo el polimorfismo. Este texto aborda conceptos básicos como clases derivadas, constructores, sobrescritura de métodos, métodos heredados vs sobrescritos, métodos static y final, polimorfismo, métodos y clases abstractas y restricciones de acceso. Además, se incluyen ejemplos y recursos adicionales.
Tipo: Apuntes
1 / 14
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!









Manuel Pereira González V1.
Introducción Clases Derivadas Implementación Constructores Sobreescritura de Métodos Métodos Heredados vs Sobreescritos Métodos static y final Polimorfismo Métodos y clases abstractas Restricciones de Acceso La Clase Object Resumen
Herencia Una clase (subclase ó clase hija) hereda la estructura de otra (superclase o clase padre), y concretiza ciertos aspectos de ésta. La clase hija comprende un subconjunto de los objetos de la clase padre. Ej: Clase: Animal Ser vivo que nace, crece, se reproduce y muere Subclase: Perro (subconjunto de animales) Ser vivo que nace, crece, se reproduce, muere, tiene cuatro patas, dos ojos, ladra, …
Relación de Generalización / Especialización Jerarquía definida a través de la Herencia: Un CANICHE es un PERRO Una PERRO es un ANIMAL Un ANIMAL es un SER VIVO
SER VIVO
ANIMAL VEGETAL
ELEFANTE PERRO JIRAFA
En java para que una clase herede de otra se utiliza la palabra clave extends
Una clase derivada hereda las variables y métodos de la clase padre, además de añadir sus variables y métodos propios
Por defecto desde un constructor de una clase hija se llama al constructor sin argumentos de la clase padre
Por defecto desde un constructor de una clase hija se llama al constructor sin argumentos de la clase padre Si se desea llamar a otro constructor de la clase padre se utiliza la palabra clave super Para mantener el encapsulamiento, una clase derivada debe inicializar sus variables específicas en el constructor, y dejar al constructor del padre inicializar las suyas.
Una clase hija puede sobreescribir un método de la clase padre para modificar su implementación
Sobreescritura de Métodos:
Polimorfismo
Polimorfismo Tratar objeto de una clase más general independientemente de que sea de una clase concreta Ej: Si tengo un perro, un elefante y una jirafa, puedo tratarlos a todos como animales Ej: Polígono -> Método para calcular el perímetro Círculo: 2 * PI * R Rectángulo: Base * Altura Triángulo: Base * Altura / 2 Lista de polígonos, cada uno sabe calcular su área pero se tratan de igual manera sin saber de qué tipo de polígono concreto se trata
Sobreescritura de Métodos:
Polimorfismo
Introducción Clases Derivadas Implementación Constructores Sobreescritura de Métodos Métodos Heredados vs Sobreescritos Métodos static y final Polimorfismo Métodos y clases abstractas Restricciones de Acceso La Clase Object Resumen
Cuatro posibles visibilidades de atributos y métodos: public, private, protected y package (por defecto, no se pone nada).
Subclase en otro SI SI NO NO paquete
Subclase en SI SI SI NO paquete
Otro paquete SI NO NO NO
Mismo paquete SI SI SI NO
Propia clase SI SI SI SI
VISIBILIDAD public protected nada private
Introducción Clases Derivadas Implementación Constructores Sobreescritura de Métodos Métodos Heredados vs Sobreescritos Métodos static y final Polimorfismo Métodos y clases abstractas Restricciones de Acceso La Clase Object Resumen
Introducción Superclases y Subclases Reutilización / Centralización de código Clases Derivadas Implementación (extends) Constructores Sobreescritura de Métodos Métodos Heredados vs Sobreescritos Métodos static y final No se pueden sobreescribir Polimorfismo
Métodos y clases abstractas Método abstract: Sin implementación por def Sólo métodos abstract en clases abstract Clases abstract no instanciables Restricciones de Acceso public, protected, nada y private La clase Object Método toString()
Resumen: Para más
información