什么是多态

实现多态有三个前提条件

1、 继承的存在;(继承是多态的基础,没有继承就没有多态)。

2、子类重写父类的方法。(多态下会调用子类重写后的方法)。

3、父类引用变量指向子类对象。(涉及子类到父类的类型转换)。

最后使用父类的引用变量调用子类重写的方法即可实现多态。即,同一个方法 , 可以有不同的展现结果;

例子

父类

public class PeoPle {
    public void say() {
        System.out.println("人说话");
    }
}

子类一

public class Man extends PeoPle {
    @Override
    public void say() {
        System.out.println("男人说话");
    }
}

子类二

public class Woman extends PeoPle {
    @Override
    public void say() {
        System.out.println("女人说话");
    }
}

测试

public class Test {

    /***
     * 多态的实例
     * @param args
     */
    public static void main(String[] args) {
        // 定义一个父类的引用变量
        PeoPle peoPle = null;
        // 指向子类的对象
        peoPle = new Man();
        peoPle.say();
        // 指向子类的对象
        peoPle = new Woman();
        peoPle.say();
    }
}

结果

  
男人说话
女人说话

Process finished with exit code 0

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐