07-18-2023, 10:57 PM
Here is the layout of an example Class, can someone guide me on what's best practice when creating a subclass of NSObject?
class MyClass: NSObject {
var someProperty: NSString! = nil
override init() {
self.someProperty = "John"
super.init()
}
init(fromString string: NSString) {
self.someProperty = string
super.init()
}
}
Is this correct, am I following best practice here?
I wonder if I'm correctly setting up the initializers (one that sets the string to a default, and one which I can pass in a string)?
Should I call `super.init()` at the end of each of the initializers?
Should my more **specific** (the one that takes a string) initializer simply call `self.init()` at the end rather than `super.init()`?
What is the right way to set up the initializers in Swift when subclassing `NSObject`? - and how should I call the super init ?
This question (albeit in Objective C) suggests you should have an init, which you always call and simply set the properties in more specific inits:
class MyClass: NSObject {
var someProperty: NSString! = nil
override init() {
self.someProperty = "John"
super.init()
}
init(fromString string: NSString) {
self.someProperty = string
super.init()
}
}
Is this correct, am I following best practice here?
I wonder if I'm correctly setting up the initializers (one that sets the string to a default, and one which I can pass in a string)?
Should I call `super.init()` at the end of each of the initializers?
Should my more **specific** (the one that takes a string) initializer simply call `self.init()` at the end rather than `super.init()`?
What is the right way to set up the initializers in Swift when subclassing `NSObject`? - and how should I call the super init ?
This question (albeit in Objective C) suggests you should have an init, which you always call and simply set the properties in more specific inits:
[To see links please register here]