Правило, описанное ответом выше, относится именно к интерфейсам. Т.е. если вы используете интерфейс, то в классе - наследнике интерфейса не должно быть методов, что не описаны в интерфейсе. Но если говорить о случае, когда один класс(не интерфейс) наследует другой, то нет никаких ограничений и это совершенно нормально. К примеру, есть у вас класс "Свет" в котором есть свойства "Включить свет", "Выключить свет" и "Аварийное отключение". И есть три класса - наследника: "Спальня", "Кухня" и "Сигнализация". При этом включать и выключать свет в спальне и на кухне мы можем когда захотим, а вот выключить лампочку, показывающую что работает сигнализация, мы можем только при чрезвычайной ситуации. Таким образом будет совершенно нормально, что классы "Спальня" и "Кухня" будут использовать только методы "Включить свет" и "Выключить свет". А класс "Сигнализация" только "Аварийное отключение". И при этом все они будут наследниками класса "Свет".
В данном случае важны не принципы и правила, а удобство структурирования кода. В прочем, обычно, все правила с удобством совпадают.