diff --git a/w5/Shape.java b/w5/Shape.java new file mode 100644 index 0000000..06d690d --- /dev/null +++ b/w5/Shape.java @@ -0,0 +1,17 @@ +abstract class Shape { + public abstract void draw(); +} + +class Circle extends Shape { + @Override + public void draw() { + System.out.println("绘制圆形"); + } +} + +class Rectangle extends Shape { + @Override + public void draw() { + System.out.println("绘制矩形"); + } +} diff --git a/w5/Test.java b/w5/Test.java new file mode 100644 index 0000000..5f727e0 --- /dev/null +++ b/w5/Test.java @@ -0,0 +1,18 @@ +public class Test { + public static void drawShape(Shape s) { + s.draw(); + } + + public static void main(String[] args) { + // 创建不同的形状对象 + Shape circle = new Circle(); + Shape rectangle = new Rectangle(); + + // 测试drawShape方法 + System.out.println("测试绘制圆形:"); + drawShape(circle); + + System.out.println("测试绘制矩形:"); + drawShape(rectangle); + } +} diff --git a/w5/VehicleTest.java b/w5/VehicleTest.java new file mode 100644 index 0000000..445c14b --- /dev/null +++ b/w5/VehicleTest.java @@ -0,0 +1,36 @@ +abstract class Vehicle { + public abstract void run(); +} + +class Car extends Vehicle { + @Override + public void run() { + System.out.println("Car"); + } +} + +class Bike extends Vehicle { + @Override + public void run() { + System.out.println("Bike"); + } +} + +class Truck extends Vehicle { + @Override + public void run() { + System.out.println("Truck"); + } +} + +public class VehicleTest { + public static void main(String[] args) { + Vehicle[] vehicles = new Vehicle[3]; + vehicles[0] = new Car(); + vehicles[1] = new Bike(); + vehicles[2] = new Truck(); + for (Vehicle v : vehicles) { + v.run(); + } + } +} \ No newline at end of file