java接口

一、接口的概念

        个人认为通过USB插口的的例子来理解接口是比较形象的,使用电脑的过程中我们一般用usb插口来连接外部设备,比如鼠标、外接键盘、U盘、散热器等等;但是如果没有usb插口我们就只能将设备连接在电脑内部,这样的话如果需要将外接设备进行更换每一次都需要拆电脑,效率太低,很不方便。

但是有了USB插口后,即插即用,需要更换时拔掉换一个就行;比如你插入U盘计算机就识别U盘,插入鼠标计算机就识别鼠标。

在这里USB插口就是接口,鼠标、U盘、散热器这些都相当于接口的实现类。

接口的优点:

1、降低程序的耦合性

2、使程序易于扩展

3、有利于程序的后期维护

二、接口的使用

接口在Java中是独立存在的一种结构,和类相似我们需要创建一个接口文件,Java中用class关键字来标识类,用interface关键字来标识接口。

基本语法:

public interface 接口名{
    public 返回值 方法名(参数列表);
}

创建接口实现类的基本语法:

public class 实现类名 implements 接口名(){
    public 返回值 方法名 (参数列表){
}
}

应用:

下面我们就用电脑模拟一下电脑usb插口分别连接鼠标和U盘的例子

/**
 * @author EA_emran
 * usb接口
 */
public interface Usb {
    /**
     * 连接设备
     */
    public void work();
}
/**
 * @author EA_emran
 * 鼠标实现类
 */
public class Mouse implements Usb{
    @Override
    public void work() {
        System.out.println("鼠标已连接");
    }
}
/**
 * @author EA_emran
 * U盘实现类
 */
public class UsbFlashDisk implements Usb{
    @Override
    public void work() {
        System.out.println("U盘已连接");
    }
}
​
/**
 * @author EA_emran
 * 电脑
 */
public class Computer {
    private Usb usb;

    public Usb getUsb() {
        return usb;
    }

    public void setUsb(Usb usb) {
        this.usb = usb;
    }

    public void work(){
        System.out.println("开始连接");
        this.usb.work();
    }
}

​

测试连接鼠标

/**
 * @author EA_emran
 */
public class TestMouse {
    public static void main(String[] args) {
        Usb usb = new Mouse();
        Computer computer = new Computer();
        computer.setUsb(usb);
        computer.work();
    }
}

运行结果

 测试连接U盘

/**
 * @author EA_emran
 */
public class TestU {
    public static void main(String[] args) {
        Usb usb = new UsbFlashDisk();
        Computer computer = new Computer();
        computer.setUsb(usb);
        computer.work();
    }
}

运行结果

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值