Dentro de un paquete existen diferentes clases:
Imaginemos que en el paquete 1 tenemos la Clase1 y en el paquete 2 tenemos la Clase3, deseamos que la Clase3 sea una subclase de la Clase1. Pero cada una se encuetra en un
paquete diferente. Tendremos que importarla:
import Paquete1.Clase1;
Existen varios modificadores:
Ø Public: Visible desde cualquier punto.
Ø Protected: Visible desde cualquier punto dentro del paquete (package) y fuera de él tan solo por una subclase de la misma.
Ø Private: Se utiliza para encapsular dentro de la clase.
Ø No ponemos modificador: No es recomendable hacerlo. Tan solo sería visible dentro de la clase y el paquete. Pero no desde otra subclase u otro paquete.
En el siguiente caso declaramos
3 variables como protected por
lo que son visibles desde cualquier punto dentro del paquete (package) y
fuera de él tan solo por una subclase de la misma. Tan solo será necesario
importarnos el paquete (import Paquete2.Clase3;).
Clase1
|
Clase2
|
Clase3
|
package
Paquete1;
public class Clase1 {
protected int v1;
protected int v2;
public Clase1() {
v1=100;v2=555; }
}
|
package Paquete1;
import Paquete2.Clase3;
public class Clase2 {
public static void main(String[] args) {
Clase1 uno=newClase1();
Clase2 dos= new Clase2();
Clase3 tres= new Clase3();
}
}
|
package Paquete2;
import Paquete1.Clase1;
public class Clase3 extends Clase1{
public Clase3() {
}
}
|
La clase Object se conoce como superclase cósmica porque
todas las clases en java nacen de Object. Cualquier clase que creemos sería así:
public
class Clase3 extends Object{}
Pero java no solicita que lo pongamos lo reconoce como si
fuera así.
public
class Clase3{}
Y cuando instanciamos
una clase nos aparecen los objetos de esa clase y todos los de la clase Object.
No hay comentarios:
Publicar un comentario