多态的基础是:对象既可以作为它自己本身的类型使用,也可以作为它的基本类型(基类)使用。
eg:创建一个包含两个方法的基类,在第一个方法中可以调用第二个方法,然后产生一个继承自该基类的导出类,且覆盖基类中的第二个方法,为该导出类创建一个对象,将它向上转型到基类型并调用第一个方法,发生什么结果?
public class Rodent {
public void eat(){
System.out.println("eat zhizhi");
}
public void GroupUp(){
eat();
System.out.println("group need eat");
}
}
public class Mouse extends Rodent{
public void eat(){
System.out.println("eat zhizhi aaaa");
}
public static void main(String[] args) {
Rodent aa=new Mouse();
aa.GroupUp();
}
}
输出结果:
eat zhizhi aaaa
group need eat
可以看出,输出结果是覆盖了方法eat后的方法。
本文通过一个具体的Java示例介绍了多态的概念,演示了如何通过子类覆盖父类的方法来实现多态行为,并展示了运行结果。
615

被折叠的 条评论
为什么被折叠?



