接口应用の接口实现匿名类对象

来源:互联网 发布:防火墙不允许访问网络 编辑:程序博客网 时间:2024/06/06 08:40
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() {@Overridepublic void stop() {System.out.println("电话设备停止运行!");}@Overridepublic 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 {@Overridepublic void start() {System.out.println("U盘设备开始运作:");}@Overridepublic void stop() {System.out.println("U盘设备停止运作!");}}// 具体的设备打印机class Printer implements USB {@Overridepublic void start() {System.out.println("打印机设备开始运作:");}@Overridepublic void stop() {System.out.println("打印机设备停止运作!");}}

0 0
原创粉丝点击