zoukankan      html  css  js  c++  java
  • 抽象接口USB的实例化

    /*
    * 接口的使用
    * 1.接口使用上也满足多态性
    * 2.接口,实际上就是定义了一种规范
    * 3.开发中,体会面向接口编程!
    */

    public class USBTest {
        public static void main(String[] args) {
            
            Computer com = new Computer();
            //1.创建了接口的非匿名实现类的非匿名对象
            Flash flash = new Flash();
            com.transferData(flash);
            
            //2. 创建了接口的非匿名实现类的匿名对象
            com.transferData(new Printer());
            
            //3. 创建了接口的匿名实现类的非匿名对象
            USB phone = new USB(){
    
                @Override
                public void start() {
                    System.out.println("手机开始工作");
                }
    
                @Override
                public void stop() {
                    System.out.println("手机结束工作");
                }
                
            };
            com.transferData(phone);
            
            
            //4. 创建了接口的匿名实现类的匿名对象
            
            com.transferData(new USB(){
                @Override
                public void start() {
                    System.out.println("mp3开始工作");
                }
    
                @Override
                public void stop() {
                    System.out.println("mp3结束工作");
                }
            });
        }
    }
    
    class Computer{
        
        public void transferData(USB usb){//USB usb = new Flash();
            usb.start();
            
            System.out.println("具体传输数据的细节");
            
            usb.stop();
        }
        
        
    }
    
    interface USB{
        //常量:定义了长、宽、最大最小的传输速度等
        
        void start();
        
        void stop();
        
    }
    
    class Flash implements USB{//flash类实现了USB接口的实例化,并覆盖了USB接口中的所有方法start(),stop()
    
        @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("打印机结束工作");
        }
        
    }
    不积跬步,无以至千里;不积小流,无以成江海。
  • 相关阅读:
    数以百万计美元的融资YO是什么东东?
    工作流和审批流
    Linux makefile 教程 很具体,且易懂
    【吐槽】火车票一票难求啊
    poj 2828 Buy Tickets(树状数组 | 线段树)
    如花搞笑图片集锦(转贴)
    苹果开发人员账号注冊流程
    优秀团队建设--美国式团队(ppt)
    屏幕分辨率(QQVGA、QVGA、VGA、XGA、WXGA、WUXGA和WSXGA+)
    怎样设计接口?
  • 原文地址:https://www.cnblogs.com/CCTVCHCH/p/14605051.html
Copyright © 2011-2022 走看看