接口经典题目

接口经典题目_第1张图片White graces:个人主页

专栏推荐:《Java入门知识》

 内容推荐:继承与组合:代码复用的两种策略

今日诗词:人似秋鸿来有信,事如春梦了无痕。


目录

一.题目

二.创建接口和类文件

1.USB接口

2.Mouse类

3.Keyboard类

三.笔记本类

1.不使用接口

2.使用接口

⭐四.为什么这样写USBequipment方法⭐

 三.结语+美图分享


一.题目

请实现笔记本电脑使用USB鼠标、USB键盘的例子

1. USB接口:包含打开设备、关闭设备功能

2. 鼠标类:实现USB接口,并具备点击功能

3. 键盘类:实现USB接口,并具备输入功能

4. 笔记本类:包含开机功能、关机功能、使用USB设备功能

二.创建接口和类文件

题目有一个接口和三个

接口经典题目_第2张图片​​

 

1.USB接口

题目要求: USB接口包含打开设备、关闭设备功能

public interface USB {
    void open();  //打开设备
    void close(); //关闭设备
}

接口经典题目_第3张图片​​

2.Mouse类

题目要求: 鼠标类实现USB接口,并具备点击功能

鼠标类和USB接口是(implements)实现关系,并且鼠标类有自己的Click(点击)功能

public class Mouse implements USB {
    @Override
    public void open() { //重写
        System.out.println("打开鼠标");
    }

    @Override
    public void close() { //重写
        System.out.println("关闭鼠标");
    }

    public void Click() { //鼠标点击功能
        System.out.println("鼠标点击");
    }
}

3.Keyboard类

题目要求: 键盘类实现USB接口,并具备输入功能

键盘类和USB接口是(implements)实现关系,并且有自己的Input(输入)功能

public class Keyboard implements USB {
    @Override
    public void open() {
        System.out.println("打开键盘");
    }

    @Override
    public void close() {
        System.out.println("关闭键盘");
    }

    public void Input() {
        System.out.println("键盘输入");
    }

}

三.笔记本类

题目要求: 笔记本类包含开机功能、关机功能、使用USB设备功能

 这里没有要求实现接口,我们正常code就行了,用接口写也可以 

1.不使用接口

public class Laptop {
    
        public void Poweron() {
        System.out.println("打开电脑");
    }

    public void Poweroff() {
        System.out.println("关闭电脑");
    }

    public void USBequipment(USB usb) { //这串代码为什么这样写待会解释
        usb.open();
        if (usb instanceof Mouse) {
            Mouse mouse = (Mouse) usb;
            mouse.Click();
        }
        if (usb instanceof Keyboard) {
            Keyboard keyboard = (Keyboard)usb;
            keyboard.Input();
        }
        usb.close();
    }
}

以键盘功能为例子,运行结果如下

接口经典题目_第4张图片​​

 

2.使用接口

public class Laptop implements USB {
    @Override
    public void open() {
        System.out.println("打开电脑");
    }

    @Override
    public void close() {
        System.out.println("关闭电脑");
    }

    public void USBequipment(USB usb) {
        usb.open();
        if (usb instanceof Mouse) {
            Mouse mouse = (Mouse) usb;
            mouse.Click();
        }
        if (usb instanceof Keyboard) {
            Keyboard keyboard = (Keyboard)usb;
            keyboard.Input();
        }
        usb.close();
    }
}

以鼠标功能为例子,运行结果

接口经典题目_第5张图片​​

 

⭐四.为什么这样写USBequipment方法⭐

为什么这样写USBequipment方法

接口经典题目_第6张图片​​ 

 重写函数调用知识链接: Java多态(含有重写函数调用)

instanceof关键字知识链接: Java多态(instanceof关键字)


 三.结语+美图分享

✨谢谢你的阅读和耐心!祝愿你在编程的道路上取得更多的成功与喜悦!"✨

⭐️点赞收藏加关注,学习知识不迷路⭐️

✔️✔️✔️✔️

⛳️ 点赞☀️收藏 ⭐️ 关注

⛳️ 点赞☀️收藏 ⭐️ 关注

⛳️ 点赞☀️收藏 ⭐️ 关注

‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️

你可能感兴趣的:(Java经典例题,算法)