Назад к вопросам
Aston
Junior — Middle
76
Какие методы инициализации объектов ты знаком и используешь в классах?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В iOS (Swift/Objective-C) для инициализации объектов в классах используются различные методы:
-
Инициализаторы (initializers) — специальные методы, которые устанавливают начальное состояние объекта. В Swift это
init(), в Objective-C — методы-init. -
Инициализаторы с параметрами — позволяют задавать начальные значения при создании объекта.
-
Конструкторы с делегацией — один инициализатор вызывает другой для избежания дублирования кода.
-
Инициализация через свойства по умолчанию — свойства класса могут иметь значения по умолчанию, которые устанавливаются при создании объекта.
Пример на Swift:
class Person {
var name: String
var age: Int
init(name: String, age: Int) {
self.name = name
self.age = age
}
convenience init(name: String) {
self.init(name: name, age: 0)
}
}
let p1 = Person(name: "Иван", age: 30)
let p2 = Person(name: "Мария")
В Objective-C инициализация обычно происходит через метод -init или кастомные инициализаторы, например:
- (instancetype)initWithName:(NSString *)name age:(NSInteger)age {
self = [super init];
if (self) {
_name = name;
_age = age;
}
return self;
}