/*
引擎类
成员变量:
型号
排量
*/
public class Engine {
private String name;
private float displacement;
private boolean state = false;
public Engine() {}
public Engine(String name, float displacement) {
this.name = name;
this.displacement = displacement;
}
public boolean isState() {
return state;
}
public void setState(boolean state) {
System.out.println("发动机已点火......");
this.state = state;
}
public void EnginStart() {
System.out.println("发动机已启动....");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public float getDisplacement() {
return displacement;
}
public void setDisplacement(float displacement) {
this.displacement = displacement;
}
}
/*
* 轮胎类
成员变量:
型号
尺寸
*
*
*
*/
public class Tyre {
private String name;
private String size;
private int wheelCount;
public Tyre() {}
public Tyre(String name, String size, int wheelCount) {
this.name = name;
this.size = size;
this.wheelCount = wheelCount;
}
public boolean fix(Tyre tyre) {
if (tyre.wheelCount < 4) {
System.out.println("轮子少一个,已经修好");
return true;
}
return true;
}
public int getWheelCount() {
return wheelCount;
}
public void setWheelCount(int wheelCount) {
this.wheelCount = wheelCount;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSize() {
return size;
}
public void setSize(String size) {
this.size = size;
}
}
public class Car {
private Engine engine;
private Tyre tyre;
public Car() {}
public Car(Engine engine, Tyre tyre) {
this.engine = engine;
this.tyre = tyre;
}
public boolean checkTyre() {
if (tyre.getWheelCount() < 4) {
System.out.println("轮子坏了,已经安排修理");
return tyre.fix(tyre);
}
return true;
}
public void work() {
if (engine.isState()) {
System.out.println("汽车已启动");
} else {
System.out.println("发动机熄火中,请点火......");
}
}
public Engine getEngine() {
return engine;
}
public void setEngine(Engine engine) {
this.engine = engine;
}
public Tyre getTyre() {
return tyre;
}
public void setTyre(Tyre tyre) {
this.tyre = tyre;
}
}
public class Demo {
public static void main(String[] args) {
Engine engine = new Engine("V8", 4.0F);
Car car = new Car(engine, new Tyre("米其林", "26", 2));//根据轮子的初始值不同有不同的方法
boolean flag = car.checkTyre();
if (flag) {
car.work();
}
engine.setState(true);
car.work();
car.getTyre().setName("佳通");
}
}