Как правильно обращаться к одиннаковым полям разных классов и как их правильно изменять? Как инниициализировать поле до создания объекта правильно?
Как инниициализировать поле до создания объекта правильно, с возможностью его изменения в дальнейшем, но не для пользователя? Программа иммитирует меню кофемашины. Есть abstract class Drink, его наследует класс Tea, есть private поле cost (цена), для разных напитков cost разный, его нужно помещать в родительский класс, в дочерний класс или во все? Вопрос больше к логированию, ведь цена на напиток должна быть заданна по умолчанию, но что, если её придётся в дальнейшем изменить? (владельцу, но не пользователю). Как лучше поступить в такой ситуации? Еще есть класс CoffeeMachine с точкой входа в программу, в программе реализован фабричный метод без интерфейса с абстрактным классом.
public abstract class Drink {
private int cost;
public void makeDrink() {
}
}
public class Tea extends Drink {
private int cost;
@Override
public void makeDrink() {
//code
}
}