दो वर्गों पर विचार करें:
class A {
var x: Int
init(x: Int) {
self.x = x
}
convenience init() {
self.init(x: 0)
}
}
class B: A {
init() {
super.init() // Error: Must call a designated initializer of the superclass 'A'
}
}
मैं यह नहीं देखता कि इसकी अनुमति क्यों नहीं है। अंत में, प्रत्येक वर्ग के नामित प्रारंभकर्ता कोई भी मान वे जरूरत के साथ कहा जाता है, तो क्यों मैं में अपने आप को दोहराने की आवश्यकता है B
'एस init
के लिए एक डिफ़ॉल्ट मान निर्दिष्ट करके x
फिर से, जब सुविधा init
में A
ठीक क्या करेंगे?