
객체가 생성되면서 해당 객체의 속성들을 초기값으로 설정하고, 다양한 초기화 작업을 수행할 수 있습니다.
유효한 상태로 초기화합니다. 그러므로 잘못된 값이 들어오지 않도록 제한할 수 있습니다.
이를 통해 객체를 초기화할 때, 일부 속성들에 대해 따로 값을 지정하지 않더라도 기본값으로 초기화할 수 있습니다. 또한 초기화 과정을 커스터마이즈할 수 있습니다.
클래스 상속에서도 중요한 역할을 합니다. 서브클래스가 슈퍼클래스의 생성자를 상속받아 사용할 수 있고, 필요에 따라 추가적인 초기화 작업을 할 수 있습니다.
class Person {
var name: String
var age: Int
// 생성자를 사용하여 객체 초기화
init(name: String, age: Int) {
self.name = name
self.age = age
}
}
let person = Person(name: "Alice", age: 30)
print(person.name) // "Alice"
print(person.age) // 30
위의 예시에서 Person 클래스의 생성자를 사용하여 person 객체를 초기화했습니다.
생성자를 통해 객체의 속성들을 초기값으로 설정하고, 객체가 유효한 상태로 생성되었습니다.
class Person {
var name: String
var age: Int
init(name: String, age: Int) {
self.name = name
self.age = age
}
}
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)
}
}
좋은 정보 감사합니다