required修饰符的使用规则
1:required修饰符只能用于修饰类初始化方法。
2:当子类含有异于父类的初始化方法时(初始化方法参数类型和数量异于父类),子类必须要实现父类的required初始化方法,并且也要使用required修饰符而不是override。
3:当子类没有初始化方法时,可以不用实现父类的required初始化方法。
eg1:
class Person {
func run(){
print("跑步")
}
// required func eat() {//required无法修饰方法,required修饰符只能用于修饰类初始化方法。
// print("吃东西")
// }
}
//继承
class fuwong: Person{
override func eat() {
super.eat()
print("fuwong 吃东西")
}
}
eg2:
class ceshiClass {
init (no3: Int){
}
required init (no4: Int){
}
}
class ceshiSubjectClass: ceshiClass{
override init(no3: Int) {
super.init(no3: no3)
}
required init(no4: Int) {
super.init(no4: no4)
}
}
网友评论