多态就是要用南方人的东西调用北方人的东西,南方人掉用南方人的东西就不需要多态了
class person{
public void eat(){
System.out.println("吃东西");
}
}
class southPerson extends person{
public void eat(){
System.out.println("吃大米");
}
public void jingShang(){
System.out.println("经商");
}
}
class northPerson extends person{
public void eat(){
System.out.println("吃面条");
}
public void yanJiu(){
System.out.println("研究");
}
}
public class DuoTai {
public static void main(String[] args){
//多态的测试是通过person来做的;
//南方人
person p=new southPerson();
p.eat();
//父类有eat所以我们可以调用eat,但是 new 的是南方人,所以我们打的是南方人的东西
System.out.println("-------------------");
southPerson sp=(southPerson)p;
//p是父类的,不能调用子类他没有的jingShang(),但是我们可以把southPerson new 出来的东西在赋值给southPerson;
sp.eat();
sp.jingShang();
System.out.println("-------------------");
//北方人
p=new northPerson();
//不用写person p=new nouthPerson();了
p.eat();
System.out.println("-------------------");
northPerson np=(northPerson)p;
np.eat();
np.yanJiu();
}
}
程序运行结果为:
吃大米
吃大米
经商
吃面条
吃面条
研究
来源:CSDN
作者:绝代风华.
链接:https://blog.csdn.net/qq_44818449/article/details/102513828