Initializer Delegation 이란 무엇인가?
- Initializer Delegation은 Swift에서 이니셜라이저 간에 작업을 전달하거나 공유할 수 있는 개념이다. 한 이니셜라이저가 다른 이니셜라이저를 호출하여 초기화 작업을 일부분을 위임하는 것을 의미한다. 이는 코드의 재사용성을 높이고, 초기화 과정을 단순화하는 데 도움이 된다.
class Desk {
var legs: Int
init(legs: Int) {
self.legs = legs
}
}
class ComputerDesk: Desk {
var color: String
init(legs: Int, color: String) {
super.init(legs: legs)
self.color = color
}
}
let myComputerDesk = ComputerDesk(legs: 4, color: "검정")
print("내 컴퓨터 책상은 \\(myComputerDesk.legs) 개의 다리를 갖고있고 \\(myComputerDesk.color)색이다.")