Welche Methoden zur Objektinitialisierung kennst du und verwendest du in Klassen?
sobes.tech KI
Antwort von AI
In iOS (Swift/Objective-C) werden verschiedene Methoden zur Initialisierung von Objekten in Klassen verwendet:
-
Initialisierer (initializers) — spezielle Methoden, die den Anfangszustand des Objekts festlegen. In Swift ist das
init(), in Objective-C sind es die Methoden-init. -
Initialisierer mit Parametern — ermöglichen das Festlegen von Anfangswerten bei der Objekterstellung.
-
Delegierende Konstruktoren — ein Initialisierer ruft einen anderen auf, um Code-Duplikation zu vermeiden.
-
Initialisierung durch Standard-Eigenschaften — Klassen-Eigenschaften können Standardwerte haben, die bei der Objekterstellung gesetzt werden.
Beispiel in 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: "Мария")
In Objective-C erfolgt die Initialisierung üblicherweise über die Methode -init oder benutzerdefinierte Initialisierer, z.B.:
- (instancetype)initWithName:(NSString *)name age:(NSInteger)age {
self = [super init];
if (self) {
_name = name;
_age = age;
}
return self;
}