bloque3:herencia
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| bloque3:herencia [15/02/2023 00:31] – [Palabra clave Extends] Fernando Valdeón | bloque3:herencia [16/09/2024 20:53] (actual) – editor externo 127.0.0.1 | ||
|---|---|---|---|
| Línea 73: | Línea 73: | ||
| </ | </ | ||
| - | >IDE Eclipse | ||
| - | {{: | ||
| + | {{: | ||
| Aquí vemos como aparecen los métodos heredados de la superclase Vehiculo: '' | Aquí vemos como aparecen los métodos heredados de la superclase Vehiculo: '' | ||
| Línea 102: | Línea 101: | ||
| Por ejemplo las clases '' | Por ejemplo las clases '' | ||
| ===== Constructor de la subclase ===== | ===== Constructor de la subclase ===== | ||
| - | **Los constructores no se heredan**. __Siempre que se crea una instancia de una subclase, se crea primero una instancia de la superclase__. Esta instanciación puede ser implícita, o explícita, o lo que es lo mismo, invisible o visible. | + | **Los constructores no se heredan**. __Siempre que se crea una instancia de una subclase, se crea primero una instancia de la superclase__. Esta instanciación puede ser implícita, o explícita, o lo que es lo mismo, invisible |
| En una clase se puede definir un constructor de forma explícita, o no definir ninguno. **Cuando no definimos un constructor, | En una clase se puede definir un constructor de forma explícita, o no definir ninguno. **Cuando no definimos un constructor, | ||
| Atendiendo a lo anterior, con los constructores de la subclase puede ocurrir 2 cosas: | Atendiendo a lo anterior, con los constructores de la subclase puede ocurrir 2 cosas: | ||
| - | * **La superclase tiene un constructor sin parámetros** (ya sea el que define Java de forma implícita, o uno definido por nosotros que no tiene parámetros). En este caso en la subclase podemos definir un constructor, | + | * **La superclase tiene un constructor sin parámetros** (ya sea el que define Java de forma implícita |
| * **La superclase no tiene un constructor sin parámetros** (o sea, se ha definido uno con parámetros). En este caso Java no puede llamar de forma implícita al constructor de la superclase, ya que necesita saber qué valor dar a sus parámetros. Entonces estamos obligados a crear también un constructor en la subclase, cuya primera instrucción es una llamada al constructor de la superclase. Esto se hace usando la instrucción '' | * **La superclase no tiene un constructor sin parámetros** (o sea, se ha definido uno con parámetros). En este caso Java no puede llamar de forma implícita al constructor de la superclase, ya que necesita saber qué valor dar a sus parámetros. Entonces estamos obligados a crear también un constructor en la subclase, cuya primera instrucción es una llamada al constructor de la superclase. Esto se hace usando la instrucción '' | ||
| ==== Palabra clave super ==== | ==== Palabra clave super ==== | ||
bloque3/herencia.1676421095.txt.gz · Última modificación: 16/09/2024 20:53 (editor externo)
