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("打印机结束工作");
        }
        
    }
    不积跬步,无以至千里;不积小流,无以成江海。
  • 相关阅读:
    codeforces 1060 B
    codeforces 1060 A
    牛客 国庆七天乐 day1 L
    BZOJ 1087: [SCOI2005]互不侵犯King
    codeforces 792CDivide by Three(两种方法:模拟、动态规划
    codeforces 797C Minimal string
    codeforces 110E Lucky Tree
    codeforces 798D
    2017福建省赛 FZU2272~2283
    Android -- Looper、Handler、MessageQueue等类之间关系的序列图
  • 原文地址:https://www.cnblogs.com/CCTVCHCH/p/14605051.html
Copyright © 2011-2022 走看看