Vamos a poner un ejemplo del segundo tipo, que simule la utilización de liberías de clases para crear un interfaz gráfico de usuario como Windows 3.1 o Windows 95.

Supongamos que tenemos una clase que describe la conducta de una ventana muy simple, aquella que no dispone de título en la parte superior, por tanto no puede desplazarse, pero si cambiar de tamaño actuando con el ratón en los bordes derecho e inferior.

La clase Ventana tendrá los siguientes miembros dato: la posición x e y de la ventana, de su esquina superior izquierda y las dimensiones de la ventana: ancho y alto.

public class Ventana {

    protected int x;
    protected int y;
    protected int ancho;
    protected int alto;
    public Ventana(int x, int y, int ancho, int alto) {
        this.x=x;
        this.y=y;
        this.ancho=ancho;
        this.alto=alto;
    }

//… } Las funciones miembros, además del constructor serán las siguientes: la función mostrar que simula una ventana en un entorno gráfico, aquí solamente nos muestra la posición y las dimensiones de la ventana.

    public void mostrar(){
        System.out.println(“posición    : x=“+x+”, y=“+y);
        System.out.println(“dimensiones : w=“+ancho+”, h=“+alto);
    }

La función cambiarDimensiones que simula el cambio en la anchura y altura de la ventana.

    public void cambiarDimensiones(int dw, int dh){
        ancho+=dw;
        alto+=dh;
    }

El código completo de la clase base Ventana, es el siguiente

package ventana;

public class Ventana {

    protected int x;
    protected int y;
    protected int ancho;
    protected int alto;
    public Ventana(int x, int y, int ancho, int alto) {
        this.x=x;
        this.y=y;
        this.ancho=ancho;
        this.alto=alto;
    }
    public void mostrar(){
        System.out.println(“posición    : x=“+x+”, y=“+y);
        System.out.println(“dimensiones : w=“+ancho+”, h=“+alto);
    }
    public void cambiarDimensiones(int dw, int dh){
        ancho+=dw;
        alto+=dh;
    }

}

Objetos de la clase base Como vemos en el código, el constructor de la clase base inicializa los cuatro miembros dato. Llamamos al constructor creando un objeto de la clase Ventana

	Ventana ventana=new Ventana(0, 0, 20, 30);

Desde el objeto ventana podemos llamar a las funciones miembro públicas

	ventana.mostrar();
	ventana.cambiarDimensiones(10, 10);
	ventana.mostrar();

Google