java 为什么要用:接口 对象 = new 实现类 ?

看代码

public class DemoInter {
    public static void main(String[] args) {
        //普通实现
/*
        A a = new A();
        a.realization();
        B b = new B();
        b.realization();
*/

        // 多态实现
        Test a = new A();
        a.realization();
        Test b = new B();
        b.realization();
    }
}


// 定义接口
interface Test {
    void realization();
}

class A implements Test {
    @Override
    public void realization() {
        System.out.println("实现类1");
    }
}

class B implements Test {
    @Override
    public void realization() {
        System.out.println("实现类2");
    }
}

普通实现:普通第二个,这些参数都要改

多态实现:实现第二个少修改一个参数

也可以这样写:

实现多个的话:只需要将new的实现类对象换成你想要的就可以, 其它地方的代码不需要改

注意:

1、多态实现中:实现类增加的方法,是不可以被访问到的

想要增加方法,使用普通实现方式

为什么不能new接口? 因为接口是抽象类,抽象类不能实例化对象,需要new实现类
经验分享 程序员 微信小程序 职场和发展