Herencia
La herencia permite que se pueden definir nuevas clases basadas en clases existentes, lo cual facilita
re-utilizar código previamente desarrollado. Si una clase deriva de otra (extends) hereda todas sus
variables y métodos. La clase derivada puede añadir nuevas variables y métodos y/o redefinir las
variables y métodos heredados.
En Java. a diferencia de otros lenguajes orientados a objetos, una clase sólo puede derivar de
una única clase, con lo cual no es posible realizar herencia múltiple en base a clases. Sin embargo
es posible "5111111131" la herencia múltiple en base a las interfaces.
Concepto de Interface
Una interface es un conjunto de declaraciones de funciones. Si una clase implementa (implements)
1111a interface. debe definir todas las funciones especificadas por la interface. Una clase puede
implementar más de una interface. representando una forma alternativa de la herencia múltiple.
A su vez. una interface puede derivar de otra o incluso de varias interfaces. en cuyo caso
incorpora todos los métodos de las interfaces de las que deriva.
Concepto (le
Interface
Una interface es un conjunto de declaraciones
de funciones. Si una clase iniplenienta (implements) una interface. debe definir todas las funciones especificadas por la interface.
Una clase puede implementar más de una interface. representando una forma alternativa de la
herencia múltiple. A su vez. una
interface puede derivar de otra o incluso de varias interfaces. en cuyo caso incorpora todos los métodos de las interfaces de las que deriva.
Concepto de Package
Un package es una agrupación de clases. Existen una serie de packages incluidos en el lenguaje
(ver jerarquía de clases que aparece en el API de Java).
Además el usuario puede crear sus propios packages. Lo habimal es juntar en packages las
clases que estén relacionadas. Todas las clases que formen parte de un package deben estar en el
mismo directorio.
La jerarquía de clases de Java (API)
Durante la generación de código en Java. es recomendable y casi necesario tener siempre a la vista
la documentación on-line del API de Java 1.1 ó Java 1.2. En dicha documentación es posible ver
tanto la jerarquía de clases, es decir la relación de herencia entre clases, como la información de los
distintos packages que componen las librerías base de Java.
Es importante distinguir entre lo que significa herencia y package. Un package es una
agrupación arbitraria de clases, una forma de organizar las clases. La herencia sin embargo consiste
en crear nuevas clases en base a otras ya existentes. Las clases incluidas en un package no derivan
por lo general de una única clase.
En la documentación on-line se presentan ambas visiones: "Package Index" y "Class
Hierarcliy". tanto en Java 1.1 como en Java 1.2. con pequeñas variantes. La primera presenta la
estructura del API de Java agrupada por packages. mientras que en la segunda aparece la jerarquía
de clases. Hay que resaltar una vez más el hecho de que todas las clases en Java son derivadas de la
clase java.lang.Object. por lo que heredan todos los métodos y variables de ésta.
Si se selecciona una clase en particular, la documentación muestra una descripción detallada
de todos los métodos y variables de la clase. A su vez muestra su herencia completa (partiendo de la
clase java.lang.Object).
No hay comentarios:
Publicar un comentario