linhe 2 weeks ago
parent
commit
72ce27a88f
Signed by: linhe GPG Key ID: 3113E644F1D5D722
  1. 37
      w5/MainFiveAdvanced.java
  2. 43
      w5/MainFiveBasic.java
  3. 16
      w5/usage.md

37
w5/MainFiveAdvanced.java

@ -0,0 +1,37 @@
public class MainFiveAdvanced {
public abstract static class Vehicle {
public abstract void run();
}
public static class Car extends Vehicle {
public void run() {
System.out.println("This is car running!");
}
}
public static class Bike extends Vehicle {
public void run() {
System.out.println("This is bike running!");
}
}
public static class Truck extends Vehicle {
public void run() {
System.out.println("This is truck running!");
}
}
public static void main(String[] args) {
Vehicle[] vehicles = new Vehicle[5];
vehicles[0] = new Car();
vehicles[1] = new Bike();
vehicles[2] = new Truck();
vehicles[3] = new Car();
vehicles[4] = new Truck();
for (Vehicle vehicle : vehicles) {
vehicle.run();
}
}
}

43
w5/MainFiveBasic.java

@ -0,0 +1,43 @@
public class MainFiveBasic {
public static abstract class Shape {
public abstract void draw();
}
public static class Circle extends Shape {
private final Double radius;
public Circle(Double radius) {
this.radius = radius;
}
public void draw() {
System.out.println("Drawing a circle of radius " + radius);
}
}
public static class Rectangle extends Shape {
private final Double side1;
private final Double side2;
public Rectangle(Double side1, Double side2) {
this.side1 = side1;
this.side2 = side2;
}
public void draw() {
System.out.println("Drawing a rectangle of " + side1 + " * " + side2);
}
}
public static void drawShape(Shape s) {
s.draw();
}
public static void main(String[] args) {
Shape circle = new Circle(1.23);
Shape rectangle = new Rectangle(1.23, 4.56);
drawShape(circle);
drawShape(rectangle);
}
}

16
w5/usage.md

@ -0,0 +1,16 @@
# 使用
```console
$ javac MainFiveBasic.java && java MainFiveBasic
Drawing a circle of radius 1.23
Drawing a rectangle of 1.23 * 4.56
```
```console
$ javac MainFiveAdvanced.java && java MainFiveAdvanced
This is car running!
This is bike running!
This is truck running!
This is car running!
This is truck running!
```
Loading…
Cancel
Save