diff --git a/w5/ShapeTest.java b/w5/ShapeTest.java new file mode 100644 index 0000000..d595fdc --- /dev/null +++ b/w5/ShapeTest.java @@ -0,0 +1,32 @@ +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 circle = new Circle(); + Shape rect = new Rectangle(); + drawShape(circle); + drawShape(rect); + } +} \ No newline at end of file diff --git a/w5/VehicleTest.java b/w5/VehicleTest.java new file mode 100644 index 0000000..35f8827 --- /dev/null +++ b/w5/VehicleTest.java @@ -0,0 +1,38 @@ +abstract class Vehicle { + public abstract void run(); +} + +class Car extends Vehicle { + @Override + public void run() { + System.out.println("汽车在公路上行驶,时速80km/h "); + } +} + +class Bike extends Vehicle { + @Override + public void run() { + System.out.println("自行车在非机动车道骑行,时速15km/h "); + } +} + +class Truck extends Vehicle { + @Override + public void run() { + System.out.println("卡车在高速上运输货物,时速60km/h "); + } +} + +public class VehicleTest { + public static void main(String[] args) { + Vehicle[] vehicles = { + new Car(), + new Bike(), + new Truck() + }; + + for (Vehicle v : vehicles) { + v.run(); + } + } +}