¿Si la clase “Titulo” es la clase madre o superclase, como es que la clase madre puede tener un método de una interfaz implementada en la clase hija (Pelicula)?... El uso de "instaceof" no me queda claro en este sentido porque la clase madre ni siquiera implementa la interfaz, si no quien lo hace es la clase hija y se usa el instanceof para ello. item es una variable de tipo Titulo y entiendo la parte del casteo, pero no puedo comprender dentro del if el "instanceof", lo correcto hubiera sido "if (item instanceof Titulo) { }"
for (Titulo item: lista)
{
System.out.println(item.getNombre());
if (item instanceof Pelicula)
{
Pelicula pelicula = (Pelicula) item;
System.out.println(pelicula.getClasificable());
}
}