Java OOP- Problem 7. Car Salesman
По условие efficiency и displacement за Engine са optional, и ако няма нищо пиша "n/a".Efficiency e String, но displacement e integer и не мога да напиша "n/a", защото е String.Пробвах да го направя String, но когато се опитам да създам последния конструктор ми пише, че вече съществува.Как да го направя?Ето и кода- http://pastebin.com/c5uTsvzV
Не е особено подреден код,няма валидации и е в pastebin :) , но идеята е, че съм направила един конструктор и за двата случая и приемам стринг и в Main правя проверка, дали получения параметър може да се парсне. Ако може го слагам като обем на двигателя, а ако не - като ефективност. Вероятно има много по-добро решение, но работи без проблем и така. Същата проверка правя и за color и weight, когато създавам обект от Car.
http://pastebin.com/NqYbtJj6
Успех
Исках решение, защото това - " When creating the object for a Car, you should keep a reference to the real engine in it " , го разбрах че по някакъв начин още в правенето на обекти на Car, да са свързани с Engine и се зачудих как да го направя.Иначе на пръв поглед, ми е ясно решението ти, благодаря !
Edit: сега видях Engine engine в Car, може ли да обясниш какво точно прави?
Това е поле като всички останали, с тази разлика че клас Engine го създаваш ти.Както имаш поле model, което е string, така е и полето engine, което е обект от твоя клас Engine. Разгледайте решението, ще видиш, че създавам обект от Engine, преди създаване на обект Car и вкарвам в конструктора на car вече готовия engine. Ако е неразбираемо в пейстбин, мога да ти пратя и линк към github. Извинявай ако има грешки в коментара, но пиша през телефона:)