• JAVA基础复习-接口匿名实现类的对象


    package com.winson.OOP;
    
    /**
     * @description:接口与接口多态性测试
     * @date: 2020/7/12 15:25
     * @author: winson
     */
    public class USBTest {
        public static void main(String[] args) {
            Computer computer = new Computer();
            //1、创建了接口的非匿名实现类的非匿名对象
            UDisk uDisk = new UDisk();
            //利用接口的多态性
            computer.transferData(uDisk);
    
            //2、创建了接口的非匿名实现类的匿名对象
            computer.transferData(new printer());
            //3、创建了接口的匿名实现类的非匿名对象
            USB phone = new USB() {
                @Override
                public void start() {
                    System.out.println("手机开始工作");
                }
    
                @Override
                public void end() {
                    System.out.println("手机结束工作");
                }
            };
            computer.transferData(phone);
            //4、创建了接口的匿名实现类的匿名对象
            computer.transferData(new USB() {
                @Override
                public void start() {
                    System.out.println("扫描仪开始工作");
                }
    
                @Override
                public void end() {
                    System.out.println("扫描仪结束工作");
                }
            });
        }
    }
    
    class Computer {
        public void transferData(USB usb) {
            usb.start();
            System.out.println("具体传输数据的细节");
            usb.end();
        }
    }
    
    interface USB {
        void start();
    
        void end();
    }
    
    class UDisk implements USB {
    
        @Override
        public void start() {
            System.out.println("U盘开始工作");
        }
    
        @Override
        public void end() {
            System.out.println("U盘结束工作");
        }
    }
    
    class printer implements USB {
    
        @Override
        public void start() {
            System.out.println("打印机开始工作");
        }
    
        @Override
        public void end() {
            System.out.println("打印机结束工作");
    
        }
    }
    
  • 相关阅读:
    .charAt()方法
    CustomerBiz方法运用
    面向对象_方法 判断
    方法
    查找无序数组索引
    面向对象_购票
    创建类 方法 构建类对象
    StringBuffer 方法
    docker创建redis mysql 等服务
    docker常用的命令
  • 原文地址:https://www.cnblogs.com/elnimo/p/13288906.html
Copyright © 2020-2023  润新知