Swift学习20:便捷初始化器convenience

张建 lol

便捷初始化器

swift 中,同一个类中的不同的 init() 方法,是不同直接使用 self.init() 平行调用的,必须使用关键字 convenience 修饰的 init方法 才能调用,这种 init方法叫做 便捷初始化器

使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Person: NSObject {
var name:String?
// 自定义初始化器
init(name: String? = nil) {
self.name = name;
print(self.name as Any);
}

// 便利初始化器
convenience init(age: Int) {
print(age);
// 只有便利选择器才能调用同级的初始化器
self.init(name:"ZJ");
}
}

调用:

1
let p = Person.init(age: 30);
  • Post title:Swift学习20:便捷初始化器convenience
  • Post author:张建
  • Create time:2023-06-21 13:45:57
  • Post link:https://redefine.ohevan.com/2023/06/21/Swift/Swift学习20:便捷初始化器convenience/
  • Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.
On this page
Swift学习20:便捷初始化器convenience