[Java - OOP Advanced - Exercises] 10. MooD 3
Реших задачата , но не е това въпроса тъй като judge не хваща лош код и евентуално да попитам това ок ли е ->
и някой друг ако я е решил по-хитро или по-коректно ако може да сподели
Реших задачата , но не е това въпроса тъй като judge не хваща лош код и евентуално да попитам това ок ли е ->
и някой друг ако я е решил по-хитро или по-коректно ако може да сподели
Аз нещо не схванах идеята за hashedPassword и по-точно, защо трябва да е generic password-a. Айде за specialPoints -да, ама pass-a?
Ти си си поиграл, като гледам, да го докараш и май се е получило :) Аз не съм правила factory-та, имам само един интерфейс, един абстрактен клас, два негови наследника и един main. Със сигурност решението не е по-коректно от твоето, но ми е интересно дали изобщо е коректно :D Дава си точките, но ме съмнява, че нищо в него не е правилно.
https://github.com/StelaIv/Mood3/tree/master/mooD
Поздрави
На мен ми се струва, че има малко проблеми, но като цяло идеята е добра
Не трябва ли да даваш типа нагоре също, всмисъл "child extends parent<E>" вместо "child<E> extends parent". Така, това <E> не се предава на парент-а и съответно дженерик нещата стоят Object
Другото е бруталното кастване, което правиш на special points. Дали не може това да се типизира с втори параметър
class Character<E, P extends Number>
P specialPoints
и съответно
class Demon extends Character<String, Double>
public Double getEnergy() { return this.specialPoints }
Тръгнах да правя задачата преди да гледам лекцията за Generics затова е този брутален каст , а иначе защо трявба да е Character<String, Double> в случая String-a каква роля има ?
Благодаря, предварително
Извинявай, пиша наизуст. Този Стринг беше първия дженерик параметър, който явно и той е Double при теб (E-то за HashedPassword). Мислех, че е стринг като е парола. Става <Double, Double>