El polimorfismo consiste en conseguir que un objeto de una clase se comporte como un objeto de cualquiera de sus subclases, dependiendo de la forma de llamar a los métodos de dicha clase o subclases.
Shape s = new Circle();
Shape->Clase Padre
Circle-> Clase Derivada
Estoy creando una variable de referencia del tipo Shape que apunta a un objeto del tipo Circle.
En polimorfismo se realizan llamados a métodos y atributos de forma diferente en compilación que en ejecución.
En tiempo de compilación:
Java observa los métodos y atributos disponibles del tipo de dato de la variable de referencia.
En tiempo de ejecución:
Java observa los métodos y atributos disponibles del tipo de dato del objeto.
martes, 1 de diciembre de 2009
Method Overriding
Para que exista Overriding de métodos, se deben cumplir dos condiciones:
1. Debe existir herencia
2. El método debe tener el mismo prototipo en la clase padre y en la clase hijo, es decir el mismo nombre, lista de argumentos y variable de retorno.
public class Shape(){
private String color;
public void draw(){
.....................
}
}
public class Circle()extends Shape{
private int radio;
public void draw(){
......................
}
}
En el código anterior se muestra el overriding del método draw(), como se observa existe herencia y la lista de argumentos, el nombre y el tipo de dato de retorno es el mismo tanto en la clase padre como en la derivada.
El objetivo del overriding de métodos se puede palpar al momento de hacer uso de Polimorfismo
1. Debe existir herencia
2. El método debe tener el mismo prototipo en la clase padre y en la clase hijo, es decir el mismo nombre, lista de argumentos y variable de retorno.
public class Shape(){
private String color;
public void draw(){
.....................
}
}
public class Circle()extends Shape{
private int radio;
public void draw(){
......................
}
}
En el código anterior se muestra el overriding del método draw(), como se observa existe herencia y la lista de argumentos, el nombre y el tipo de dato de retorno es el mismo tanto en la clase padre como en la derivada.
El objetivo del overriding de métodos se puede palpar al momento de hacer uso de Polimorfismo
Clase OBJECT
Esta clase es la raíz en la jerarquía de clases. Cada clase creada en JAVA tiene a OBJECT como su superclase o clase padre, todo objeto; incluyendo los arrays, implementan los métodos de esta clase.
Modificadores de Visibilidad
En java se utilizan modificadores de visibilidad al momento de declarar atributos y métodos, estos modificadores permiten o no la utilización de dichos métodos o atributos.
Public: Acceso desde:
Public: Acceso desde:
- La misma clase
- Otra clase del mismo paquete
- Subclase de otro paquete
- Otra clase de otro paquete
Protected: Acceso desde:
- La misma clase
- Otra clase del mismo paquete
- Subclase de otro paquete
Default: Acceso desde:
Suscribirse a:
Entradas (Atom)