Мы узнали, что хорошей практикой написания кода на Java является использование только одного оператора return в методе. Однако, вот моя проблема;
У меня есть абстрактный суперкласс, Action. Есть подклассы, такие как WalkAction, JumpAction, DoNothingAction и т. Д. В классе Actor есть метод, который возвращает действие, основанное на требованиях цикла if-else if-else. Как я должен иметь только 1 оператор возврата, если класс Action не может быть создан. Прямо сейчас метод выглядит примерно так:
private Action getAction(Actor actor, Distance distance) {
if (distance < 5) {
return new JumpAction(actor);
}
else if (distance > 5 && distance < 10) {
return new WalkAction(actor);
}
else {
return new DoNothingAction(actor);
}
}
Это также показывает ошибку, что нет оператора возврата