黑马程序员技术交流社区

标题: 多态扩展性的应用 [打印本页]

作者: 追逐    时间: 2014-3-14 20:51
标题: 多态扩展性的应用
/*
多态:可以理解为事物存在的多种体现形态
1,多态的体现
        父类的引用指向了自己的子类对象
        父类的引用也可以接受自己的子类对象。
2,多态的前提
        必须是类与类之间有关系,要么继承,要么实现。
        通常还有一个前提,存在覆盖。
3,多态的好处
        多态的出现大大提高程序的扩展性。
4.多态的弊端
        提高了扩展性,但是只能使用父类的引用访问父类中的成员。
4,多态的应用
*/
//建立一个动物类
abstract class Animal {
        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 kanJia() { //狗的特有功能
                System.out.println("看家");
        }
       
}

//定义一个猪类继承动物类
class Pig extends Animal {

        public void eat() {
                System.out.println("吃饲料");
        }
       
        public void gongDi() { //猪的特有功能
                System.out.println("拱地");
        }
       
}

//运行类
class DuoTaiDemo {
        public static void main(String[] args) {
                Cat c = new Cat();
                Dog d = new Dog();
                Pig p = new Pig();
                funEat(c); //父类引用指向子类对象
                funEat(d);
                funEat(p);
               
        }
       
        //写一个函数可以输出子类调用父类的函数内容
        public static void funEat(Animal a) { //Animal a = new Cat(Dog, Pig)();
                a.eat();
        }
       
}
作者: 2528870651    时间: 2014-3-15 12:40
昨天刚刚学到这里啊 !!
作者: 追逐    时间: 2014-3-15 13:58
那正好。我也刚学到。大家一起进步
作者: 2528870651    时间: 2014-3-15 21:13
追逐 发表于 2014-3-15 13:58
那正好。我也刚学到。大家一起进步

恩呢!!!!  加油啊
作者: 追逐    时间: 2014-3-15 21:55
恩恩。加油




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2