package InterfaceDemo;
/*
* 功能说明:
* 电脑的usb接口功能
* 闪盘可以实现这个接口
* 打印机也可以实现这个接口
* 如果新来的一个新的产品例如打印机,还没有定义此时就应该是实现接口的匿名类对象
*
* */
public class TestInterface {
public static void main(String[] args) {
Computer computer = new Computer();
USB printer = new Printer();
USB flashDisk = new FlashDisk();
computer.doWork(printer);
computer.doWork(flashDisk);
// 如果此时来了一个新的符合usb接口规则的电子设备例如电话,这里就可以直接利用接口匿名调用
USB phone = new USB() {
@Override
public void stop() {
System.out.println("电话设备停止运行!");
}
@Override
public void start() {
System.out.println("电话设备开始运行");
}
};
computer.doWork(phone);
// // 如果此时来了一个新的符合usb接口规则的电子设备例如电话,这里就可以直接利用接口匿名调用
// computer.doWork(new usb(){
// public void stop() {
// System.out.println("电话设备停止运行!");
//
// }
//
// @Override
// public void start() {
// System.out.println("电话设备开始运行");
//
// }
// });
}
}
// 订立USB标准
interface USB {
void start();
void stop();
}
// 电脑的运行过程
class Computer {
public static void doWork(USB usb) {
usb.start();
System.out.println("嘟嘟嘟 设备运行的过程 嘟嘟嘟");
usb.stop();
}
}
// 具体的设备U盘
class FlashDisk implements USB {
@Override
public void start() {
System.out.println("U盘设备开始运作:");
}
@Override
public void stop() {
System.out.println("U盘设备停止运作!");
}
}
// 具体的设备打印机
class Printer implements USB {
@Override
public void start() {
System.out.println("打印机设备开始运作:");
}
@Override
public void stop() {
System.out.println("打印机设备停止运作!");
}
}
接口应用の接口实现匿名类对象
最新推荐文章于 2023-03-17 19:01:51 发布