Hola jimgo. Una forma de hacerlo podría ser la siguiente (qué mejor que un ejemplo para entender):
public abstract class Persona
{
protected String nombre;
protected String apellido;
protected int edad;
public String obtenerNombreCompleto() {
return nombre + " " + apellido;
}
public int obtenerEdad() {
return edad;
}
}
public class Empleado extends Persona
{
public Empleado( String nombre, String apellido, int edad ) {
this.nombre = nombre;
this.apellido = apellido;
this.edad = edad;
}
}
public class Cliente extends Persona
{
public Cliente( String nombre, String apellido, int edad ) {
this.nombre = nombre;
this.apellido = apellido;
this.edad = edad;
}
}
public class Poliformismo
{
private static final String NOMBRE = "Agustín";
private static final String APELLIDO = "Gómez";
private static final int EDAD = 21;
public static void main( String[] args ) {
Persona empleado = new Empleado( NOMBRE, APELLIDO, EDAD );
Persona cliente = new Cliente( NOMBRE, APELLIDO, EDAD );
System.out.println("********* EMPLEADO ***********");
System.out.println(empleado.obtenerNombreCompleto());
System.out.println(empleado.obtenerEdad());
System.out.println("********* CLIENTE ***********");
System.out.println(cliente.obtenerNombreCompleto());
System.out.println(empleado.obtenerEdad());
}
}
Fijate si te sirve así... depende qué es lo que quieras hacer. También se podrían usar interfaces.
Saludos
Agustín