스위프트에서 convenience init(= 추가생성자)은 초기화 과정을 더 편리하게 만들기 위해 사용되는 특별한 형태의 이니셜라이저입니다.
convenience init을 사용하여 다른 이니셜라이저를 호출하거나 기존의 이니셜라이저를 더 간결하게 구현할 수 있습니다.
기본적으로 convenience init은 동일한 클래스 내에서 다른 이니셜라이저를 호출하는 용도로 사용됩니다.
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: 25)
let person2 = Person(name: "Bob") // convenience init 사용
참고(출처) : 개발하는 정대리, 야곰(Swift5)