接口经典题目

news/2024/11/17 5:31:11/
White graces:个人主页

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

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

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


目录

🌸一.题目🌸

🌸二.创建接口和类文件🌸

🍎1.USB接口🍎

🍎2.Mouse类🍎

🍎3.Keyboard类🍎

🌸三.笔记本类🌸

🍎1.不使用接口🍎

🍎2.使用接口🍎

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

 🌸三.结语+美图分享🌸


🌸一.题目🌸

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

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

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

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

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

🌸二.创建接口和类文件🌸

🍀题目有一个接口和三个🍀

​​

 

🍎1.USB接口🍎

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

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

​​

🍎2.Mouse类🍎

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

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

public class Mouse implements USB {@Overridepublic void open() { //重写System.out.println("打开鼠标");}@Overridepublic void close() { //重写System.out.println("关闭鼠标");}public void Click() { //鼠标点击功能System.out.println("鼠标点击");}
}

🍎3.Keyboard类🍎

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

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

public class Keyboard implements USB {@Overridepublic void open() {System.out.println("打开键盘");}@Overridepublic 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();}
}

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

​​

 

🍎2.使用接口🍎

public class Laptop implements USB {@Overridepublic void open() {System.out.println("打开电脑");}@Overridepublic 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();}
}

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

​​

 

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

🍀为什么这样写USBequipment方法🍀

​​ 

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

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


 🌸三.结语+美图分享🌸

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

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

🎉✔️💪🎉✔️💪🎉✔️💪🎉✔️💪🎉

👍😏⛳️ 点赞☀️收藏 ⭐️ 关注!😏👍

👍😏⛳️ 点赞☀️收藏 ⭐️ 关注!😏👍

👍😏⛳️ 点赞☀️收藏 ⭐️ 关注!😏👍

🙆‍♂️🙆‍♂️🙆‍♂️🙆‍♂️🙆‍♂️🙆‍♂️🙆‍♂️🙆‍♂️🙆‍♂️🙆‍♂️🙆‍♂️🙆‍♂️🙆‍♂️


http://www.ppmy.cn/news/1055710.html

相关文章

NO.06 自定义映射resultMap

目录 1、前言 2、resultMap处理字段和属性的映射关系 2.1 通过resultMap为字段起别名的方式,保证和实体类中的属性名保持一致。 2.2在MyBatis的核心配置文件中设置一个全局配置信息mapUnderscoreToCamelCase 3、 多对一映射 3.1 前置工作 3.2 级联方式处理映…

【自动驾驶】TI SK-TDA4VM 开发板上电调试,AI Demo运行

1. 设备清单 TDA4VM Edge AI 入门套件【略】USB 摄像头(任何符合 V4L2 标准的 1MP/2MP 摄像头,例如:罗技 C270/C920/C922)全高清 eDP/HDMI 显示屏最低 16GB 高性能 SD 卡连接到互联网的 100Base-T 以太网电缆【略】UART电缆外部电源或电源附件要求: 标称输出电压:5-20VDC…

Linux线程 --- 生产者消费者模型(C语言)

在学习完线程相关的概念之后,本节来认识一下Linux多线程相关的一个重要模型----“ 生产者消费者模型” 本文参考: Linux多线程生产者与消费者_红娃子的博客-CSDN博客 Linux多线程——生产者消费者模型_linux多线程生产者与消费者_两片空白的博客-CSDN博客…

AI 绘画Stable Diffusion 研究(十四)SD 图生图+剪映制作人物说话视频

大家好,我是风雨无阻。 前一篇,我们详细介绍了使用 SadTlaker制作数字人视频案例,感兴趣的朋友请前往查看:AI 绘画Stable Diffusion 研究(十三)SD数字人制作工具SadTlaker使用教程。 对于没有安装 SadTlaker 插件的朋友…

Anaconda安装pytorch-cuda

1 查看电脑对应cuda版本 【win-R】> 【cmd】> 确定 执行nvidia-smi,可以从图中看出,该电脑的CUDA Version为:11.6 2 官网查找对应的版本的安装语句 PyTorch官网:https://pytorch.org/ 2.1 可以直观的选择对应的版本 如…

GAN(生成对抗网络)

简介:GAN生成对抗网络本质上是一种思想,其依靠神经网络能够拟合任意函数的能力,设计了一种架构来实现数据的生成。 原理:GAN的原理就是最小化生成器Generator的损失,但是在最小化损失的过程中加入了一个约束&#xff0…

uniapp 使用 mui-player 插件播放 m3u8/flv 视频流

在UniApp中使用mui-player插件播放M3U8/FLV视频流,可以按照以下步骤进行操作: 1. 安装mui-player插件 :在UniApp项目根目录下,使用命令行工具执行以下命令安装mui-player插件: npm install mui-player --save2. 在需…

github出现的2FA的问题

github出现的2FA的问题 首先是收到的邮件提醒: 关键的信息是: 这提醒我们,我们宣布,我们要求用户贡献代码o n GitHub.com启用双因素身份验证 (2FA)。您收到此通知是因为您的帐户符合此标准,并且需要在00:00 (UTC) 2023年9月15日注册2FA。 …