黑马程序员技术交流社区
标题:
多态总结
[打印本页]
作者:
linder_qzy
时间:
2015-3-9 16:30
标题:
多态总结
多态是什么
事物存在的多种体现形态
多态的表现形式
父类的引用指向了自己子类的对象;父类的引用也可以接收自己的子类对象
多态的好处
大大提高了代码的扩展性。
多态的前提
类与类之间必须有关系,要那么继承,要么实现;方法需要完全覆盖。
多态的弊端
提高了扩展性,但是只能用父类的引用去访问父类的成员
abstract class Animal
{
public abstract void eat();
}
class Cat extends Animal
{
public void eat(){
System.out.println("吃鱼");
}
public void catchMouse(){
System.out.println("抓老鼠");
}
}
class Dog extends Animal
{
public void eat(){
System.out.println("吃骨头");
}
public void catchHome(){
System.out.println("看家");
}
}
class Pig extends Animal
{
public void eat(){
System.out.println("吃饲料");
}
public void gongDi(){
System.out.println("拱地");
}
}
class Demo01_DuoTai
{
public static void main(String[] args)
{
//多态的表现形式:父类的引用指向了自己子类的对象;父类的引用也可以接收自己的子类对象
function(new Cat());
function(new Dog());
function(new Pig());
/*
输出结果
吃鱼
吃骨头
吃饲料
*/
}
public static void function(Animal a){
a.eat();
}
}
复制代码
作者:
woshishei121
时间:
2015-3-9 22:36
学习了:P
作者:
张耀东
时间:
2015-3-9 22:44
谢谢楼主分享
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2