Вот макет примерного класса, может ли кто-нибудь направить меня на какую лучшую практику при создании подкласса NSObject?
class MyClass: NSObject {
var someProperty: NSString! = nil
override init() {
self.someProperty = "John"
super.init()
}
init(fromString string: NSString) {
self.someProperty = string
super.init()
}
}
Является ли это правильным, могу ли я следовать лучшей практике здесь?
Интересно, правильно ли я устанавливаю инициализаторы (тот, который устанавливает строку по умолчанию, и тот, который я могу передать в строке)?
Должен ли я называть super.init()
в конце каждого из инициализаторов?
Если мой более определенный (тот, который берет строку) инициализатор просто вызывает self.init()
в конце, а не super.init()
?
Каков правильный способ установки инициализаторов в Swift при подкласце NSObject
? - и как я могу назвать супер init?
Этот вопрос (хотя и в Objective C) предполагает, что у вас должен быть init, который вы всегда вызываете, и просто задаете свойства в более конкретных inits: Objective-C Несколько инициализаторов