听懂是听懂了,但是不懂这么做有什么意义?
Animal a=new Animal();
这是正常的创建主类对象。
Animal b=new Dog();
这是指主类b对象指向了Dog子类。
而且b是不能引用Dog子类中的独有方法的,那么这样做有什么特殊意义吗?
我也是新手,按照我看的《java编程思想》上解释,方法分为静态绑定和动态绑定,java中除了final,static修饰的方法都是动态绑定,使用多态可以使你只操作基类,更加方便。
打一个不太恰当的比方,动物都能吃东西,但吃的不同,不用多态,每个动物都要写一个eat方法,而且要记住每个新对象的类,使用多态,在基类调用eat方法,自动绑定到子类eat方法,只操作基态,在对象繁多时好处明显。
若有不对,请大神们指正,我也刚学。。。。