站点图标 神之眼的博客

在Swift中,便利初始化器(convenience init)和普通初始化器(init)之间几个关键的区别

當前文章的短網址連結為: https://unos.top/98ms

1. 定义和目的

2. 调用关系

3. 使用场景

4. 示例代码

class Person {
    var name: String
    var age: Int

    // 指定初始化器
    init(name: String, age: Int) {
        self.name = name
        self.age = age
    }

    // 便利初始化器
    convenience init(name: String) {
        self.init(name: name, age: 0) // 调用指定初始化器
    }
}

// 使用
let person1 = Person(name: "Alice", age: 30) // 使用指定初始化器
let person2 = Person(name: "Bob") // 使用便利初始化器,年龄默认为0
Swift

退出移动版