Private методы и свойства
Область видимости метода всегда должна быть минимальна. Доступ к методу открывается только тогда, когда это действительно необходимо.
Не можете придумать пример? Вот только сейчас программирую класс клиента к серверам http и https. Предположим, есть класс Client, обобщающий HttpClient и HttpsClient. На тот класс ложится транспортная работа между приложением и протоколом. Внутри описания процессов работы класса Client часто используются функции, которые относятся непосредственно к уровню абстракции данного класса (соответственно, имеют доступ private). Например, сериализация массива заголовков запроса и его последующая отправка. То есть данная функция участвует в алгоритме Client, при этом такую функцию использовать где-либо еще бессмысленно, в том числе и в дочерних классах HttpClient и HttpsClient.