Principios de java

Solo disponible en BuenasTareas
  • Páginas: 7 (1619 palabras)
  • Descarga(s): 0
  • Publicado: 25 de septiembre de 2010
Leer documento completo
Vista previa del texto
1.-POLIMORFISMO
El polimorfismo tiene que ver con la relación que se establece entre la llamada a un método y el código que efectivamente se asocia con dicha llamada. A esta relación se llama vinculación (binding). La vinculación puede ser temprana (en tiempo de compilación) o tardía (en tiempo de ejecución). Con funciones normales o sobrecargadas se utilizavinculación temprana (es posible y es lo más eficiente). Con funciones redefinidas en Java se utiliza siempre vinculación tardía, excepto si el método es final. Elpolimorfismo es la opción por defecto en Java.
La vinculación tardía hace posible que, con un método declarado en una clase base (o en una interface) y redefinido en las clases derivadas (o en clases que implementan esa interface), sea eltipo de objeto y no el tipo de la referencia lo que determine qué definición del método se va a utilizar. El tipo del objeto al que apunta una referencia sólo puede conocerse en tiempo de ejecución, y por eso el polimorfismo necesita evaluación tardía.
El polimorfismo permite a los programadores separar las cosas quecambian de las que no cambian, y de esta manera hacer más fácil la ampliación, el mantenimiento y la reutilización de los programas.
El polimorfismo puede hacerse con referencias de superclases abstract, super-clases normales e interfaces. Por su mayor flexibilidad y por su independencia de la jerarquía de clases estándar, las interfaces permiten ampliarmuchísimo las posibilidades del polimorfismo.
Ejemplo:
import java.awt.*;
import java.util.ArrayList;
import java.util.Iterator;

public class PanelDibujo extends Panel {
// variable miembro
private ArrayList v;

// constructor
public PanelDibujo(ArrayList va) {
super(new FlowLayout());
this.v = va;}

// redefinición del método paint()
public void paint(Graphics g) {
Dibujable dib;
Iterator it;
it = v.iterator();
while(it.hasNext()) {
dib = (Dibujable)it.next();
dib.dibujar(g);
}
}

2.-HERENCIA
Herencia es el mecanismo fundamentalpara implementar la reutilización y extensibilidad del software. A través de ella los diseñadores pueden construir nuevas clases partiendo de una jerarquía de clases ya existente (comprobadas y verificadas) evitando con ello el rediseño, la remodificación y verificación de la parte ya implementada. La herencia facilita la creación de objetos a partir de otros ya existentes, obteniendocaracterísticas (métodos y atributos) similares a los ya existentes.
Es la relación entre una clase general y otra clase más específica. Por ejemplo: Si declaramos una clase párrafo derivada de una clase texto, todos los métodos y variables asociadas con la clase texto, son automáticamente heredados por la subclase párrafo.
La herencia es uno de los mecanismos de la programación orientada a objetos, pormedio del cual una clase se deriva de otra, llamada entonces superclase, de manera que extiende su funcionalidad. Una de sus funciones más importantes es la de proveer Polimorfismo .

Ejemplo:
Para indicar que una clase deriva de otra se utiliza la palabra extends, como por ejemplo:
class CirculoGrafico extends Circulo {...}
public class Mamifero
{private int patas;
private String nombre;

public void imprimirPatas()
{
System.out.println(nombre + " tiene " + patas + " patas\n");
}

public Mamifero(String nombre, int patas)
{
this.nombre = nombre;...
tracking img