При проектировании иерархии классов иногда в подкласс был добавлен новый метод initWithSomeNewParam
, и было бы желательно отключить вызовы старого метода init
, унаследованного от суперкласс.
Прежде всего, я прочитал вопрос здесь, где предложены альтернативы: либо переопределить init
для создания исключения во время выполнения, либо переопределить и установить значения по умолчанию для свойств. .В моем случае я не хочу предоставлять значения по умолчанию, и я хочу четко указать, что старый метод не должен вызываться, а вместо него должен использоваться новый метод с параметрами.
Таким образом, исключение во время выполнения — это хорошо, но пока код не отлажен, другие программисты в команде не смогут заметить, что старый метод больше не предназначен для использования.
Если я прав, метод нельзя пометить как «приватный». Итак, помимо добавления комментариев, есть ли способ сделать это?
Заранее спасибо.