Hola:
No es habitual hacerlo de forma tan directa, como bien dices, si quieres un empleado, lo guardas en una variable empleado y listo.
Lo mas habitual suele ser tener un "almacen" de Persona en el que metes, mezclados, cosas como Empleado, Supervisor, Jefe, Director, etc, todos ellos que heredan de Persona.
LinkedList<Persona>lista = new LinkedList<>();
lista.add(new Empleado());
lista.add(new Persona());
lista.add(new Director());
...
cuando recorres esa lista y necesitas métodos que todos tienen porque heredas de Persona, no hace falta nada especial.
Pero imagina que te piden que escribas el sueldo de los empleados y getSueldo() solo lo tienen los empleados. No te queda mas que hacer algo como esto
Código Java:
Ver originalfor (Persona p : lista) {
if (p instanceof Empleado) {
Empleado e = (Empleado)p;
System.
out.
println (e.
getSueldo()); }
}
como ves, se tiene un empleado guardado en una variable de tipo Persona y hay que hacer el cast para poder llamar a getSueld().
Se bueno.