[英]Simulating Multple Entries and Exits in a Vehicle Car Park in Java with Multi Threading
[英]Simulating a Car (Java)
我正在做一個模擬汽車的項目。 要求是通過向汽車加注燃料來演示汽車的運行,然后運行汽車直到沒有更多燃料。 模擬以不同速度填充和運行汽車的過程。 在汽車運行時,定期打印出汽車當前的行駛里程、燃油量和速度。
我編寫了一些其他類來保存一些我將用來計算燃料、速度和里程的方法。 我只是在如何讓它像真正的汽車一樣工作時遇到了一些麻煩,任何幫助將不勝感激。
public class FuelGauge {
protected double fuel;
public FuelGauge()
{
fuel = 0.0;
}
public double getFuel()
{
return fuel;
}
public void setFuel(double fuel)
{
this.fuel = fuel;
}
public void fuelUp()
{
if(fuel<18)
fuel++;
}
public void fuelDown()
{
if(fuel>0)
fuel--;
}
}
公共類里程表擴展了 FuelGauge {
private int mileage, mpg;
private int economy;
public int getMileage()
{
return mileage;
}
public void setMileage(int mileage)
{
this.mileage = mileage;
}
public int getMpg()
{
return mpg;
}
public void setMpg(int mpg)
{
this.mpg = mpg;
}
public void mileUp()
{
if(mileage<999999)
mileage++;
}
public void mileReset()
{
if(mileage>999999)
mileage = 0;
}
public void decreaseFuel(int fuel)
{
if(mileage == mpg)
fuelDown();
}
public int getEconomy()
{
return (int) (mileage/fuel);
}
public void setEconomy(int economy)
{
this.economy = economy;
}
}
公共類汽車擴展里程表{
private String name;
private int speed;
public Car()
{
name = "Car";
getMileage();
getMpg();
getEconomy();
getFuel();
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public int getSpeed()
{
return speed;
}
public void setSpeed(int speed)
{
this.speed = speed;
}
public void increaseSpeed()
{
if(speed<=120)
speed++;
}
public void decreaseSpeed()
{
if(speed>0)
speed--;
}
}
我更推薦你的汽車組件的 contains vs isa 關系。
class FuelGauge { ... }
class Odometer { ...}
class Vehicle { ... }
class Car extends Vehicle
{
private FuelGauge fuelGauge = new FuelGauge();
private Odometer odometer = new Odometer();
...
}
好吧,這里有一些建議:
希望能幫助靈感跑起來。
這是您的汽車模擬器應用程序的設計:
希望這是有幫助的。
-KishoreMadina
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.