第二行的 Car carInLot; 是什麼意思呢?
是引用另一個class Car嗎?
Car和Carlot是什麼關係?
第三行Car givenCar為參數,意思是傳入的值"必須是class Car"的object嗎?
第四行carInLot = givenCar;
carInLot會等於new Car("red", 70);嗎?
class CarLot {
Car carInLot; //???
public CarLot(Car givenCar) { //???
carInLot = givenCar; // ???
}
public Car returnACar() { //???
return carInLot;
}
public static void main(String[] args) {
Car myCar = new Car("red", 70);
CarLot myCarLot = new CarLot(myCar); //???
System.out.println(myCarLot.returnACar());
}
}
如果你是不懂CarLot跟Car的關係,你需要學好英文
class CarLot {
Car carInLot; // 這個類別中的屬性/變數
public CarLot(Car givenCar) { // 這是建構式
carInLot = givenCar; // 這邊在做初始化,將這個類別中的carInLot設為傳入的givenCar
}
public Car returnACar() { // 就只是回傳方法
return carInLot;
}
public static void main(String[] args) {
Car myCar = new Car("red", 70);
CarLot myCarLot = new CarLot(myCar); // 初始化instance,對應你的問題的話=>是
System.out.println(myCarLot.returnACar());
}
}
第二行的 Car carInLot;
Ans:代表宣告一個變數(車廂)存取一種車
是引用另一個class Car嗎?
Ans:同一個Class
Car和Carlot是什麼關係?
Ans:Car是對於車的定義,Carlot是用來存取定義好的車
第三行Car givenCar為參數,意思是傳入的值"必須是class Car"的object嗎?
Ans:沒錯,這樣可以規範是否為同一種class
第四行carInLot = givenCar;
carInLot會等於new Car("red", 70);嗎?
Ans:會