Во-первых, насколько я понимаю, init в Objective-C
функционально похож на конструктор в Java
, поскольку он используется для инициализации переменные экземпляра и подготовить класс к работе. Это правильно?
Я понимаю, что NSObject
реализует init
, и поэтому его не нужно объявлять ни в каких файлах .h
.
Но как насчет пользовательской реализации init для данного класса, например:
(id) initWithName:(NSString *) name
Должно ли подобное объявление быть указано как часть .h
, или это не обязательно? Это сделано по соглашению или есть другие аргументы?