Я знаю, что можно использовать класс переменной, удерживающий производный объект класса. Как ниже ....В чем преимущество базового класса, удерживающего производный объект класса?
class Animal
{
public void printName()
{
System.out.println("Print your name");
}
}
public class Tiger extend Animal
{
public void Print()
{
System.out.println("My Name");
}
public void static main(String args[])
{
Animal type1 = new Tiger();
//with this new created type1 varibale. I can only access members of Animal class.
type1.PrintName() // valid
type1.Print() //In-valid
}
}
Так в чем же польза? Но я не вижу никакой пользы. Может кто-нибудь объяснить мне, может быть, я чего-то не хватает. Благодарю.