如果我有一類車:構造函數創建另一個繼承Java
public class Car {
int weight;
Car(){}
public Car(int weight) {
this.weight = weight;
}
}
和另一級轎車,從轎車繼承:
public class Sedan extends Car {
public Sedan(int weight) {
super(weight);
}
}
和第三類吉普也從車繼承:
public class Jeep extends Car {
public Jeep(int weight) {
super(weight);
}
}
我怎樣才能讓這個當我說Car mercedes = new Car(5000);
構造函數創建一個new Jeep
或new Sedan
根據給定的重量:if(weight>3000)
,創建一個吉普mercedes=new Jeep(weight);
,否則創建一個轎車mercedes=new Sedan(weight);
?
不是在構造函數中結束所有的汽車。你需要的是一個工廠。 (一種調用各自構造函數的方法) –