From 8ecc8d41f86ab1e5bd146dd9188191185f6f6851 Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Mon, 27 Jul 2026 16:55:40 +0800 Subject: [PATCH] =?UTF-8?q?day10-=E7=AC=94=E8=AE=B0=E6=9C=AC=E6=A1=88?= =?UTF-8?q?=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/inmind/duotai_test12/KeyBoard.java | 17 ++++++++++ .../src/com/inmind/duotai_test12/Laplop.java | 26 +++++++++++++++ day10/src/com/inmind/duotai_test12/Mouse.java | 17 ++++++++++ .../src/com/inmind/duotai_test12/Test12.java | 32 +++++++++++++++++++ day10/src/com/inmind/duotai_test12/Usb.java | 6 ++++ 5 files changed, 98 insertions(+) create mode 100644 day10/src/com/inmind/duotai_test12/KeyBoard.java create mode 100644 day10/src/com/inmind/duotai_test12/Laplop.java create mode 100644 day10/src/com/inmind/duotai_test12/Mouse.java create mode 100644 day10/src/com/inmind/duotai_test12/Test12.java create mode 100644 day10/src/com/inmind/duotai_test12/Usb.java diff --git a/day10/src/com/inmind/duotai_test12/KeyBoard.java b/day10/src/com/inmind/duotai_test12/KeyBoard.java new file mode 100644 index 0000000..4dc89c7 --- /dev/null +++ b/day10/src/com/inmind/duotai_test12/KeyBoard.java @@ -0,0 +1,17 @@ +package com.inmind.duotai_test12; +//键盘类,要实现USB接口,具备敲击的方法 +public class KeyBoard implements Usb{ + @Override + public void open() { + System.out.println("键盘开始工作"); + } + + @Override + public void close() { + System.out.println("键盘关闭了"); + } + + public void knock(){ + System.out.println("键盘敲击了,敲了java!!!"); + } +} diff --git a/day10/src/com/inmind/duotai_test12/Laplop.java b/day10/src/com/inmind/duotai_test12/Laplop.java new file mode 100644 index 0000000..6f1d977 --- /dev/null +++ b/day10/src/com/inmind/duotai_test12/Laplop.java @@ -0,0 +1,26 @@ +package com.inmind.duotai_test12; +//笔记本类,包含运行功能、关机功能、使用USB设备功能 +public class Laplop { + public void powerOn(){ + System.out.println("笔记本开机"); + } + + public void powerOff(){ + System.out.println("笔记本关机"); + } + + public void useUSB(Usb usbDevice) { + usbDevice.open(); + //加上类型判断,是鼠标就点,是键盘就敲 + if (usbDevice instanceof Mouse) { + Mouse mouse = (Mouse) usbDevice; + mouse.click(); + } + if (usbDevice instanceof KeyBoard) { + KeyBoard keyBoard = (KeyBoard)usbDevice; + keyBoard.knock(); + } + + usbDevice.close(); + } +} diff --git a/day10/src/com/inmind/duotai_test12/Mouse.java b/day10/src/com/inmind/duotai_test12/Mouse.java new file mode 100644 index 0000000..5f94e08 --- /dev/null +++ b/day10/src/com/inmind/duotai_test12/Mouse.java @@ -0,0 +1,17 @@ +package com.inmind.duotai_test12; +//鼠标类,要实现USB接口,并具备点击的方法 +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("鼠标点击了"); + } +} diff --git a/day10/src/com/inmind/duotai_test12/Test12.java b/day10/src/com/inmind/duotai_test12/Test12.java new file mode 100644 index 0000000..2911387 --- /dev/null +++ b/day10/src/com/inmind/duotai_test12/Test12.java @@ -0,0 +1,32 @@ +package com.inmind.duotai_test12; +/* +笔记本电脑 +笔记本电脑(laptop)通常具备使用USB设备的功能。在生产时,笔记本都预留了可以插入USB设备的USB接口,但具体是什么USB设备, +笔记本厂商并不关心,只要符合USB规格的设备都可以。 +定义USB接口,具备最基本的开启功能和关闭功能。鼠标和键盘要想能在电脑上使用,那么鼠标和键盘也必须遵守USB规范,实现USB接口, +否则鼠标和键盘的生产出来也无法使用。 + +案例分析 +进行描述笔记本类,实现笔记本使用USB鼠标、USB键盘 +USB接口,包含开启功能、关闭功能 +笔记本类,包含运行功能、关机功能、使用USB设备功能 +鼠标类,要实现USB接口,并具备点击的方法 +键盘类,要实现USB接口,具备敲击的方法 + */ +public class Test12 { + public static void main(String[] args) { + //买一个笔记本 + Laplop laplop = new Laplop(); + //开机 + laplop.powerOn(); + //买一个鼠标和键盘 + Mouse mouse = new Mouse(); + KeyBoard keyBoard = new KeyBoard(); + //让笔记本使用键盘和鼠标 + laplop.useUSB(mouse); + laplop.useUSB(keyBoard); + + //关机 + laplop.powerOff(); + } +} diff --git a/day10/src/com/inmind/duotai_test12/Usb.java b/day10/src/com/inmind/duotai_test12/Usb.java new file mode 100644 index 0000000..c0e9018 --- /dev/null +++ b/day10/src/com/inmind/duotai_test12/Usb.java @@ -0,0 +1,6 @@ +package com.inmind.duotai_test12; +//USB接口,包含开启功能、关闭功能 +public interface Usb { + public abstract void open(); + void close(); +}