Escolar Documentos
Profissional Documentos
Cultura Documentos
LA HERENCIA
B. Jerarqua
La herencia es el mecanismo fundamental de relacin entre clases en la
orientacin a objetos. Relaciona las clases de manera jerrquica; una
clase padre osuperclase sobre otras clases hijas o subclases.
Para indicar que una clase deriva de otra, heredando sus propiedades (mtodos y
atributos), se usa el trmino extends, como en el siguiente ejemplo:
public class SubClase extends SuperClase {
// Contenido de la clase
int z;
MiPunto3D( ) {
x = 0; // Heredado de MiPunto
y = 0; // Heredado de MiPunto
z = 0; // Nuevo atributo
La palabra clave extends se utiliza para decir que deseamos crear una subclase de
la clase que es nombrada a continuacin, en nuestro caso MiPunto3D es hija
deMiPunto.
E. Limitaciones en la herencia
Todos los campos y mtodos de una clase son siempre accesibles para el cdigo
de la misma clase.
Para controlar el acceso desde otras clases, y para controlar la herencia por las
subclase, los miembros (atributos y mtodos) de las clases tienen tres
modificadores posibles de control de acceso:
public: Los miembros declarados public son accesibles en cualquier lugar
en que sea accesible la clase, y son heredados por las subclases.
private: Los miembros declarados private son accesibles slo en la propia
clase.
protected: Los miembros declarados protected son accesibles slo para sus
subclases
Por ejemplo:
class Padre { // Hereda de Object
// Atributos
// Mtodos
return numeroFavorito;
return nacidoHace;
return dineroDisponible;
// Definicin
class Visita {
// Definicin
A veces se desea crear un mtodo o una variable que se utiliza fuera del contexto
de cualquier instancia, es decir, de una manera global a un programa. Todo lo que
se tiene que hacer es declarar estos elementos como static.
Esta es la manera que tiene Java de implementar funciones y variables globales.
Por ejemplo:
static int a = 3;
Met. static = 99
Met. no static = 42
Debe tenerse en cuenta que en un mtodo esttico tan slo puede hacerse
refernecia a variables estticas.
c.) Las clases y mtodos abstractos: abstract
Hay situaciones en las que se necesita definir una clase que represente un
concepto abstracto, y por lo tanto no se pueda proporcionar una implementacin
completa de algunos de sus mtodos.
Se puede declarar que ciertos mtodos han de ser sobrescritos en las subclases,
utilizando el modificador de tipo abstract. A estos mtodos tambin se les
llamaresponsabilidad de subclase. Cualquier subclase de una clase abstract debe
implementar todos los mtodos abstract de la superclase o bien ser declarada
tambin como abstract.
Cualquier clase que contenga mtodos declarados como abstract tambin se tiene
que declarar como abstract, y no se podrn crear instancias de dicha clase
(operador new).
Por ltimo se pueden declarar constructores abstract o mtodos abstract static.
Veamos un ejemplo de clases abstractas:
abstract class claseA {
void metodoConcreto() {
void metodoAbstracto(){