Está en la página 1de 11

HERENCIA

Una clase padre o superclase sobre otras clases hijas o subclases.

Los descendientes de una clase heredan todas las variables y métodos que sus ascendientes
hayan especificado como heredables, además de crear los suyos propios.

Una vez que una clase ha sido depurada y probada, el código fuente de dicha clase no
necesita modificarse. Su funcionalidad se puede cambiar derivando una nueva clase que
herede la funcionalidad de la clase base y le añada otros comportamientos.

Del diagrama de clases al java:

Para indicar que una clase deriva de otra, heredando sus propiedades (métodos y
atributos), se usa el término extends, como en el siguiente ejemplo:

public class cientifico extends persona {


public String especialidad;
public void setEspecialidad (String e) { … }
public String getEspecialidad () { … }
public void mensaje () { … }
public void mensajeEspecial () { … }
}
POLIMORFISMO

El polimorfismo es una característica por la cual se puede definir un nuevo código


para un método definido anteriormente.
El único requisito que deben cumplir los objetos que se utilizan de esta manera, es saber
responder a los mensajes que se les envía.
LAS CLASES Y MÉTODOS 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 implementación completa de
algunos de sus métodos. Se puede declarar que ciertos métodos han de ser
sobrescritos en las subclases, utilizando el modificador de tipo abstract.
Cualquier subclase de una clase abstract debe implementar todos los métodos abstract de la
superclase o bien ser declarada también como abstract.

INTERFACES
Las interfaces Java son expresiones puras de diseño, definen el comportamiento de
una clase, pero no su implementación.
Se trata de declarar métodos abstractos y constantes que posteriormente puedan ser
implementados de diferentes maneras según las necesidades de un programa.
Por defecto, todas las interfaces son públicas.
Una interfaz no puede implementar otra interfaz, aunque sí extenderla (extends)
ampliándola.
Para declarar una interfaz se utiliza la sentencia interface, de la misma manera que
se usa la sentencia class:
interface MiInterfaz
{
final int CONSTANTE = 100;
int metodoAbstracto( int parametro );
}
class ImplementaInterfaz implements MiInterfaz {
int multiplicando=CONSTANTE;
int metodoAbstracto( int parametro )
{
return ( parametro * multiplicando );
}
}

COMPARACIÓN CLASE ABSTRACTA VS. INTERFAZ

LOS ELEMENTOS GLOBALES: STATIC


Un método o variable se declara como static si se utiliza fuera del contexto de
cualquier instancia, es decir, de una manera global a un programa.
static int a = 3;
static void metodoGlobal()
{
// implementación del método
}
Otro aspecto en el que es útil static es en la creación de métodos a los que se puede
llamar directamente invocando el nombre de la clase en la que están declarados.
CLASE ANIDADA
Es una clase definida como miembro de otra clase.
Se le conoce como clase inner y a la clase que lo contiene, clase outer.

También podría gustarte