接口的作用

接口是一套大家事先商量好的协议,类似生产充电器和生产手机的两个厂家,为了让充电器能完美插上手机,那他们各自生产产品之前,必须商量好我的数据线的尺寸该多大,你的手机留的槽该多大合适,于是它们就给出第三方标准,就是接口,两者只要满足这个接口的要求,就能确保你生产的充电器能完美适配我生产的手机
所以,接口就是双方或者多方事先共同遵守的一套协议,自己制定的生产标准规格

  1. 接口可以使项目分层,所有层面向接口开发,效率大大提高
  2. 接口可以使项目变得可插拔,代码与代码之间耦合度降低

注: 接口和抽象类都可实现时,优先选接口:

  1. 接口可以与接口之间实现多继承
  2. 类实现接口的同时还能继承其他类,即接口保留了类的继承
public interface Cpu {//定义cup接口
    void start();
}

public class Valon625 implements Cpu{//具体型号的cup

    @Override
    public void start() {
        System.out.println("搭载骁龙625");
    }
}

public class Valon820 implements Cpu {//骁龙820

    @Override
    public void start() {
        System.out.println("搭载骁龙820");
    }
}

public class Valon835 implements Cpu {//骁龙835
    @Override
    public void start() {
        System.out.println("搭载骁龙835");
    }
}

public class Phone {
    Cpu cpu;//接口
    Phone(Cpu cpu){
        this.cpu=cpu;//没有把类型写死
    }
    public void carryCpu(){
        cpu.start();//此方法的具体情况要看是哪个类实现了cpu接口
    }
}

public class CpuTest {//测试类
    public static void main(String[] args){
        Cpu cpu1=new Valon625();//面向接口编程,让项目变的可插拔,耦合度降低
        Phone vivo=new Phone(cpu1);
        vivo.carryCpu();

        Cpu cpu2=new Valon820();//由于是接口,所以cpu的型号可以随时用多态来修改
        Phone xiaomi5=new Phone(cpu2);
        xiaomi5.carryCpu();

        Cpu cpu3=new Valon835();
        Phone huawei=new Phone(cpu3);
        huawei.carryCpu();
    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值