![]()
public abstract class Vehicle
{
protected Road road;
public void setRoad(Road road)
{
this.road = road;
}
public abstract void drive();
}
public class Bus extends Vehicle
{
@Override
public void drive()
{
String carType = "bus";
this.road.bedrive(carType);
}
}
public class Car extends Vehicle
{
@Override
public void drive()
{
String carType = "car";
this.road.bedrive(carType);
}
}
public interface Road
{
void bedrive(String carType);
}
public class ConcreteRoad implements Road
{
@Override
public void bedrive(String carType)
{
System.out.println(carType + "在水泥路行驶");
}
}
public class PitchRoad implements Road
{
@Override
public void bedrive(String carType)
{
System.out.println(carType + "在沥青路行驶");
}
}
public class Main {
public static void main(String[] args) {
Vehicle car = new Car();
Road pitchRoad = new PitchRoad();
car.setRoad(pitchRoad);
car.drive();
Vehicle bus = new Bus();
Road concreteRoad = new ConcreteRoad();
bus.setRoad(concreteRoad);
bus.drive();
}
}
posted @
2024-12-05 09:21
kuku睡
阅读(
6)
评论()
收藏
举报