• 做个复习案例(把面向对象三大特征给复习一遍 以及接口 )


    package com.itheiReview;
    
    /**
     * @program: javaDemo01->TestReview
     * @description: 复习案例
     * @author: 安生
     * @create: 2021-01-19 22:51
     **/
    
    import java.security.Key;
    
    /**
        需求:
            弄一台电脑 (实现USB功能)
            USB(鼠标,键盘)  实现插入和拔出 以及特有功能
     */
    public class TestReview {
        public static void main(String[] args) {
            //买一台电脑
            Computer c = new Computer();
            //创建鼠标 小米鼠标
            USB xiaomi = new Mouse("小米鼠标");
            c.installUSB(xiaomi);
            System.out.println("--------------");
            USB shaunfei = new Mouse("双飞键盘");
            c.installUSB(shaunfei);
        }
    
    }
    
    //电脑类  提供USB的入口 具体实现出来
    class Computer{
        public void installUSB(USB usb){
            //插入
            usb.connect();
            // 特有方法
            if(usb instanceof Mouse){
                Mouse m = (Mouse) usb;
                m.dbClick();
            }else if(usb instanceof KeyBoard){
                KeyBoard k = (KeyBoard) usb;
                k.keyDown();
            }
            // 拔出
            usb.unconnect();
        }
    }
    //鼠标  提供一个鼠标的规范
    class Mouse implements USB{
        private String name;
        public Mouse(){}
        public Mouse(String name) {
            this.name = name;
        }
        //鼠标 双击的特有功能
        public void dbClick(){
            System.out.println("来了 老铁 双击点亮小红♥");
        }
        @Override
        public void connect() {
            System.out.println(name+"插入鼠标连接成功!");
        }
    
        @Override
        public void unconnect() {
            System.out.println(name+"拔出鼠标连接成功!");
        }
    }
    //键盘  提供一个键盘的规范
    class KeyBoard implements USB{
        private String name;
        public KeyBoard(){}
        public KeyBoard(String name) {
            this.name = name;
        }
        //键盘  敲键盘的特有功能
        public void keyDown(){
            System.out.println("敲出了 来了 老弟");
        }
        @Override
        public void connect() {
            System.out.println(name+"插入键盘连接成功!");
        }
    
        @Override
        public void unconnect() {
            System.out.println(name+"拔出键盘连接成功!");
        }
    }
    
    //第一步 规范接口  USB
    interface USB{
        // 公有功能:
        //插入
        void connect();
        //拔出
        void unconnect();
    }
  • 相关阅读:
    MQTT协议探究(三)
    MQTT协议探究(二)
    MQTT协议探究(一)
    MQTT图形化客户端比较
    Ubuntu编写开机启动脚本
    线程阻塞释放的5种方法
    (转)Linux vmstat命令实战详解
    (转)MongoDB 3.0 WT引擎参考配置文件
    (转)mongodb常用命令脚本化-自动化运维
    (转)MongoDB 实现currentOp定时捕获
  • 原文地址:https://www.cnblogs.com/bichen-01/p/14300624.html
Copyright © 2020-2023  润新知