在深入学习Java的时候,我一直很疑惑,既然有了父类和子类的关系,为什么还要用多态,这不是多此一举嘛。
一直对这个问题搞不明白,在网上找相关的讲解视重复看了几遍,有点懂了。下面举个例子来说明一下吧。
员工类是父类,讲师类和助教类都是子类;
如果不用多态,只用子类,那么写法是:
Teacher one=new Teacher();
one.work();//讲课
Assistant two =new Assistant();
two.work();//辅导
我现在唯一要做的事情,就是要调用work方法,其他的功能不关心
如果使用多态的写法,对比一下:
Employee one=new Teacher();
one.work();//讲课
Employee two=new Assistant();
two.work();//辅导
好处:无论右边new的时候换成那个子类对象,等号左边调用方法都不会变化。