В чем разница между обязательным инициализатором и назначенным инициализатором?
Я создавал свой собственный tableViewCell, а затем я получил сообщение об ошибке:
'обязательный' инициализатор 'init (coder :)' должен быть предоставлен подклассом 'UITableViewCell'
Я посмотрел это и, очевидно, это необходимо для реализации. Но это привело к моей путанице в отношении обязательных и назначенных инициализаторов
Apple Docs говорит:
Требуемые инициализаторы:
Напишите требуемый модификатор перед определением инициализатора класса, чтобы указать, что каждый подкласс класса должен реализовывать этот инициализатор:
Назначенные инициализаторы
Назначенные инициализаторы являются первичными инициализаторами для класса. Назначенный инициализатор полностью инициализирует все свойства, представленные этим классом, и вызывает соответствующий инициализатор суперкласса, чтобы продолжить процесс инициализации в цепочке суперкласса.
Верны ли следующие утверждения:
Требуемый инициализатор всегда является назначенным инициализаторомКаждый назначенный инициализатор не обязательно является обязательным инициализаторомКласс может иметь только один обязательный инициализатор, однако он может иметь несколько назначенных инициализаторов?Сказав это, я до сих пор не до конца понимаю их функциональные различия.