二、Java面向对象-多态

2019-07-18  本文已影响0人  Lord丶轩莫言弃

1、对象的多种形态

注意:使用多态时,两个类必须出现继承关系。

2、引用多态代码示例

public class Animal{
    
}
public class Dog extends Animal{
    
}
public class Test{
    public static void main(String[] args){
        Animal animal1 = new Animal();
        Animal animal2 = new Dog(); // 父类的引用可以指向子类的对象
        // Dog dog = new Animal(); 错,父类可以指向子类,但是,子类不能指向父类
    }
}

3、方法多态代码示例

public class Animal{
    public void eat(){
        System.out.println("动物具有吃的能力");
    }
}
public class Dog extends Animal{
    public void eat(){
        System.out.println("狗是吃肉的");
    }
    
    public void watchDoor(){
        System.out.println("狗具有看门的能力");
    }
}
public class Cat extends Animal{
    
}
public class Test{
    public static void main(String[] args){
        Animal animal1 = new Animal();
        Animal animal2 = new Dog(); // 父类的引用可以指向子类的对象
        Animal animal3 = new Cat();
        // Dog dog = new Animal(); 错,父类可以指向子类,但是,子类不能指向父类
        animal1.eat();
        animal2.eat();
        animal3.eat();
        // animal2.watchDoor(); 错,不允许调用子类独有的方法
    }
}
上一篇 下一篇

猜你喜欢

热点阅读