色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java設計一個油箱類和汽車類

張越彬1年前6瀏覽0評論

在Java中,我們可以通過面向對象編程來設計一個油箱類和汽車類。首先,我們來設計油箱類。

public class GasTank {
private double capacity; // 容量
private double level; // 油量
public GasTank(double capacity) {
this.capacity = capacity;
this.level = 0;
}
public void addGas(double amount) {
this.level = Math.min(this.capacity, this.level + amount);
}
public void useGas(double amount) {
this.level = Math.max(0, this.level - amount);
}
public double getLevel() {
return this.level;
}
public double getCapacity() {
return this.capacity;
}
public boolean isFull() {
return Math.abs(this.level - this.capacity)< 0.000001;
}
public boolean isEmpty() {
return Math.abs(this.level)< 0.000001;
}
}

上面的代碼實現了一個油箱類,它有兩個私有成員變量capacity和level,分別表示容量和油量。我們可以使用構造方法來初始化容量,并提供一些方法來增加或消耗油量,并返回當前油量、容量以及油箱是否已滿或已空的狀態。

接下來,我們來設計汽車類。

public class Car {
private String make; // 品牌
private String model; // 型號
private GasTank gasTank; // 油箱
private double mileage; // 里程
public Car(String make, String model, double tankCapacity) {
this.make = make;
this.model = model;
this.gasTank = new GasTank(tankCapacity);
this.mileage = 0;
}
public void drive(double miles) {
double mpg = 25.0; // 每加侖行駛英里數
double gallons = miles / mpg;
if (this.gasTank.getLevel() >= gallons) {
this.gasTank.useGas(gallons);
this.mileage += miles;
} else {
System.out.println("Need to refuel!"); // 提示需要加油
}
}
public void refill() {
double amount = this.gasTank.getCapacity() - this.gasTank.getLevel();
System.out.println("Add " + amount + " gallons of gas."); // 提示加了多少加侖的油
this.gasTank.addGas(amount);
}
public double getMileage() {
return this.mileage;
}
public boolean isTankFull() {
return this.gasTank.isFull();
}
public boolean isTankEmpty() {
return this.gasTank.isEmpty();
}
}

上面的代碼實現了一個汽車類,它有四個私有成員變量make、model、gasTank和mileage,分別表示品牌、型號、油箱和里程。我們可以使用構造方法來初始化品牌、型號和油箱容量,并提供一些方法來駕駛汽車、加油以及返回里程和油箱狀態。

通過上面的代碼設計,我們可以很方便地創建油箱和汽車對象,并進行相關的操作。這種面向對象的編程思想使得代碼更加簡潔、易讀、易維護和易擴展。