Junior — Middle
Obyektlərin təşəkkülü üçün hansı metodları tanıyırsan və siniflərdə istifadə edirsən?
sobes.tech Süni İntellekt
AI-dan cavab
iOS (Swift/Objective-C) daxilində, siniflərdə obyektlərin başlanğıc üçün müxtəlif metodlar istifadə olunur:
-
İlkinləşdiricilər (initializers) — obyektin başlanğıc vəziyyətini müəyyən edən xüsusi metodlar. Swift-də bu
init(), Objective-C-də isə-initmetodlarıdır. -
Parametrli ilkinləşdiricilər — obyekt yaradılarkən başlanğıc dəyərlərini təyin etməyə imkan verir.
-
Delegasiya ilə qurucular — bir ilkinləşdirici digərini çağırır ki, kod təkrarlanmasın.
-
Standart xüsusiyyətlər vasitəsilə başlanğıc — sinifin xüsusiyyətləri, obyekt yaradılarkən, standart dəyərlərə sahib ola bilər.
Swift nümunəsi:
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-də, adətən, -init və ya xüsusi ilkinləşdiricilər vasitəsilə başlanğıc həyata keçirilir, məsələn:
- (instancetype)initWithName:(NSString *)name age:(NSInteger)age {
self = [super init];
if (self) {
_name = name;
_age = age;
}
return self;
}