我想从我的超类中禁用或删除一些初始化,这里是我的测试代码:
class MyA {
init() {
}
init(value: String) {
}
init(value2: String) {
}
}
class MyB: MyA {
}
如您所见,MyA有3个初始化,MyB有相同的初始化,因为它是子类,所以我想在MyB类中删除这3个初始化中的2个,我想用init()初始化MyB,我该怎么做呢?另外2个方法对子类不可用。
1条答案
按热度按时间cu6pst1q1#
https://docs.swift.org/swift-book/LanguageGuide/Initialization.html
如果你的子类没有定义任何指定的初始化器,它会自动继承所有超类指定的初始化器。
因此,定义一个指定的初始化式。