Этот вопрос проистекает из нескольких связанных вопросов и в некоторой степени напоминает первый, который, похоже, не дает четкого ответа на главный вопрос ФП:
Я очень четко понимаю назначение частных методов, ноМне трудно думать о примере, где реализация функции в частном методе не вызовет проблем для потребителя API, но размещение реализации непосредственно в открытом методе будет.Это обычная практика в API-интерфейсах Java.
По сути, я снова задаю первый вопрос выше, потому что не прочитал ответ, который укрепляет мое понимание.Возьмем тот же пример:
public class Sum {
private int sum(int a, int b){
return a + b;
}
public int getSum(int a, int b){
return sum(a, b);
}
}
В чем преимущество использования функции private sum вместо простого помещения результата непосредственно в public-функцию?
public int getSum(int a, int b) {
return a + b;
}
Возможно, это не такЭто лучший пример, но я очень приветствую более сложные или реальные примеры.
Опять же, я понимаю, что размещение реализации в частном методе скрывает реализацию и допускает повторное использование и в целомлучшая практика для будущих дополнений.Тем не менее,
- Как не , использующий его в частном методе, может нарушить работу пользователей API?
- Должны ли все публичные методы быть созданы таким образом (всегда помещайте реализацию в приватный метод), или где нарисована линия?