父类中有一个public void printDetail方法
1、子类中没有该方法时,用子类的对象调public void printDetail方法,输出的就是父类该方法执行的结果
2、若父类的该方法不能满足子类的需求,子类则要对该方法进行重写(方法名,参数,返回值类型都要相同,访问权限>=父类),此时再用子类的对象调public void printDetail方法,输出的就是子类重写后的同名方法执行的结果,此时若子类的对象想要调用父类的该方法,则要再写一个不同名p2方法:用super调用父类的public void printDetail,然后用子类的对象调p2方法来实现父类方法
3、若把父类的引用指向子类的对象,则该引用可以调用子类重写后的该同名方法(向上转型),多态就表现出来了
4、若父类的引用此时想调用子类中特有的方法p2,则要把指向子类对象的父类引用赋给子类的引用(向下转型)
情况一:
情况二:1、
2、
情况三:
情况四: