Flower flower = new Hyacint();
Tulip tulip = (Tulip)flower
Misslyckas då flower inte är en Tulip utan en Hyacint och
det finns inget arv mellan Tulip och Hyacint
Kan även använda operatorn as som tillåter oss att
göra en explicit typomvandling som inte kastar
exception utan bara returnerar värdet null ifall
omvandlingen misslyckas
Flower flower = new Hyacinth();
Tulip tulip = flower as Tulip
if (tulip != null)
Implicit
Från subklass till superklass
Enligt Liskovs substitionsprincip så kan ju subklassen allt som superklassen kan.
Lyckas ALLTID! Som att en int alltid kan bli en long.