JavaSE学习之接口总结

什么是接口:

·微观:接口是一种能力和约定
·宏观:接口是一种标准

接口与类的异同:

· 没有构造方法,仅可定义公开静态常量与公开抽象方法。
· public static int VALUE = 0;
· public static abstrator method();

接口的应用:

· Java为单继承,当父类的方法种类无法满足子类需求时,可实现接口扩充子类能力。
· class A implements InterfaceA , interfaceB {
		//实现A接口的所有方法
		//实现B接口的所有方法
}

接口的规范:

· 任何类在实现接口时,必须实现接口中所有的抽象方法,否则此类为抽象类。
· 实现接口中的抽象方法时,访问修饰符必须是public。

什么是常量接口:

· 将多个常用于表示状态

下面展示段代码来帮助理解

/**
 *  定义一个TestUSB
 * 模仿电脑的USB接口
 */
public class TestUSB {
    public static void main(String[] args) {
        //
        Computer c1 = new Computer();
        c1.on(new Fan());
        c1.on(new Fan() , new UDisk());
        c1.on(new Fan() , new Lamp() , new UDisk());//使用工具
    }
}
/**
 * 第一步:程序员定义一个电脑类
 * 创建接口引用:创建‘USB接口’
 * 定义一个电脑“开机”方法:开机时“启动服务...”
 */
class Computer {//工具
	//定义三个USB接口
    USB u1;
    USB u2;
    USB u3;
    public ovid on(){}
    public void on(USB u1){
        this.u1 = u1;
        System.out.println("开机,进入操作界面...");
        //接口的使用者
        u1.service();
    }
    public void on(USB u1 , USB u2){
        this.u1 = u1;
        this.u2 = u2;
        System.out.println("开机,进入操作界面...");
        //接口的使用者
        u1.service();
        u2.service();
    }
    public void on(USB u1 , USB u2 , USB u3){
        this.u1 = u1;
        this.u2 = u2;
        this.u3 = u3;
        System.out.println("开机,进入操作界面...");
        //接口的使用者
        u1.service();
        u2.service();
        u3.service();
    }
}
/**
 * USB 接口
 */
interface USB {
    /**
     * USB接口插上之后,调用某个服务
     * service() 服务
     */
    public void service();
}
//接口的实现类,三个
/**
 * USB接口的风扇类
 */
class Fan implements USB {
    public void service() {
        System.out.println("旋转...");
    }
}
/**
 * USB接口的灯类
 */
class Lamp implements USB {
    public void service(){
        System.out.println("照明...");
    }
}
/**
 * USB接口的U盘
 */
class UDisk implements USB {
    public void service(){
        System.out.println("读取U盘数据...");
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值