Ejemplo abstracción

package com.trifulcas.clases;


abstract public class Repaso {

	private String nombre;
	
	public void saludo() {
		System.out.println("Hola");
	}

	// Método abstracto: contrato de obligación de implementar
	abstract public void despedida();
}

class RepasoExt extends Repaso{
	public void tonteria() {
		System.out.println("Probando");
	}
	public void despedida() {
		System.out.println("Adios");
	}
}
class RepasoExt2 extends Repaso{
	public void otraTonteria() {
		System.out.println("Buuu");
	}

	@Override
	public void despedida() {
		System.out.println("Chao");
		
	}
	
}

Uso:


package com.trifulcas.clases;

public class ProbarClases {

	public static void main(String[] args) {

		RepasoExt r = new RepasoExt();
		RepasoExt2 r2 = new RepasoExt2();

		// Esto da error porque es una clase abstracta
		// Y no se pueden instanciar
		// Repaso r3=new Repaso();

		r.saludo();
		r.tonteria();

		r.despedida();
		r2.saludo();
		r2.otraTonteria();
		r2.despedida();
		System.out.println("----------");
		Repaso[] lista= {new RepasoExt(),new RepasoExt2(),new RepasoExt()};
		for(Repaso el:lista) {
			el.despedida();
		}
	}

}

Publicado por

Juan Pablo Fuentes

Formador de programación y bases de datos