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("打印机结束工作");
        }
        
    }
    不积跬步,无以至千里;不积小流,无以成江海。
  • 相关阅读:
    Dockerize a .NET Core application
    Images之管理image
    Images之Dockerfile中的命令2
    Images之Dockerfile中的命令1
    Docker Builders:Builder pattern vs. Multi-stage builds in Docker
    Images之multi-stage builds
    Images之base image
    Images之Dockerfiles
    Docker 开发最佳实践
    Docker 开发概述
  • 原文地址:https://www.cnblogs.com/CCTVCHCH/p/14605051.html
Copyright © 2011-2022 走看看