diff --git a/w5/ShapeTest.java b/w5/ShapeTest.java new file mode 100644 index 0000000..091e5c5 --- /dev/null +++ b/w5/ShapeTest.java @@ -0,0 +1,35 @@ +class Shape { + public void draw() { + System.out.println("绘制一个形状"); + } +} + +class Circle extends Shape { + @Override + public void draw() { + System.out.println("绘制一个圆形"); + } +} + +class Rectangle extends Shape { + @Override + public void draw() { + System.out.println("绘制一个矩形"); + } +} + +public class ShapeTest { + public static void drawShape(Shape s) { + s.draw(); + } + + public static void main(String[] args) { + Shape shape1 = new Circle(); + Shape shape2 = new Rectangle(); + Shape shape3 = new Shape(); + + drawShape(shape1); + drawShape(shape2); + drawShape(shape3); + } +} \ No newline at end of file diff --git a/w5/USBTest.java b/w5/USBTest.java new file mode 100644 index 0000000..5a655e9 --- /dev/null +++ b/w5/USBTest.java @@ -0,0 +1,55 @@ +// 接口 +interface USB { + void open(); + void close(); +} + +// Mouse类实现USB接口 +class Mouse implements USB { + @Override + public void open() { + System.out.println("鼠标已连接,可以移动光标"); + } + + @Override + public void close() { + System.out.println("鼠标已断开"); + } +} + +// Keyboard类实现USB接口 +class Keyboard implements USB { + @Override + public void open() { + System.out.println("键盘已连接,可以输入文字"); + } + + @Override + public void close() { + System.out.println("键盘已断开"); + } +} + +// Computer类 +class Computer { + public void useUSB(USB device) { + System.out.println(">>> 正在接入设备..."); + device.open(); + System.out.println("<<< 正在拔出设备..."); + device.close(); + System.out.println(); + } +} + +// 主类(文件名必须是 USBTest.java) +public class USBTest { + public static void main(String[] args) { + Computer computer = new Computer(); + + USB mouse = new Mouse(); + USB keyboard = new Keyboard(); + + computer.useUSB(mouse); + computer.useUSB(keyboard); + } +} diff --git a/w5/截屏2026-04-06 12.58.43.png b/w5/截屏2026-04-06 12.58.43.png new file mode 100644 index 0000000..27f86b8 Binary files /dev/null and b/w5/截屏2026-04-06 12.58.43.png differ diff --git a/w5/截屏2026-04-06 13.01.27.png b/w5/截屏2026-04-06 13.01.27.png new file mode 100644 index 0000000..58c0b00 Binary files /dev/null and b/w5/截屏2026-04-06 13.01.27.png differ