java车的类型 轿车 大巴车 车的型号 宝马550i 别克林荫大道 五菱宏光 金龙 16座及以下 16座以上 一天的租金 600元/天 300元/天 150元/天 800元/天 1600元/天
时间: 2024-11-20 15:39:32 浏览: 13
在Java中,"车"是一个抽象的概念,如果我们要创建一个简单的汽车类模型,可以有如下的类结构:
1. **Car** (抽象类) - 定义车的基本属性,比如品牌、车型、座位数等,但不会提供具体的租车价格信息。
```java
public abstract class Car {
private String brand;
private String model;
private int seats;
public Car(String brand, String model, int seats) {
this.brand = brand;
this.model = model;
this.seats = seats;
}
// getters and setters for brand, model, and seats
}
```
2. **Sedan** 和 **Minivan** (具体子类) - 派生自Car,代表轿车和大巴车,分别包含租赁价格的具体信息。
```java
public class Sedan extends Car {
private static final double DAY_RATE = 600; // 轿车租金
public Sedan(String brand, String model, int seats) {
super(brand, model, seats);
}
@Override
public double getDailyRent() {
return DAY_RATE;
}
}
public class Minivan extends Car {
private static final double DAY_RATE = 300; // 大巴车租金
public Minivan(String brand, String model, int seats) {
super(brand, model, seats);
}
@Override
public double getDailyRent() {
return DAY_RATE;
}
}
```
3. **SpecificModels** (例如宝马550i和别克林荫大道) - 可以作为Sedan或Minivan的实例。
```java
public class BMW550i extends Sedan {
public BMW550i() {
super("宝马", "550i", 5); // 假设宝马550i有5个座位
}
}
public class BuickLindenAvenue extends Minivan {
public BuickLindenAvenue() {
super("别克", "林荫大道", 7); // 假设林荫大道有7个座位
}
}
```
对于五菱宏光和金龙这类大型车辆,也可以类似地添加子类,并设置对应的租赁价格。
至于分类"16座及以下"和"16座以上",这通常需要一个额外的划分系统,例如创建一个名为`VehicleCategory`的辅助类来管理这种分类,然后在每个子类中加入相应的判断。
阅读全文