생성자(Initializer)

init()
- 인스턴스 초기화 목적
- 인스턴스가 만들어지면서 자동 호출됨
- init을 직접 만들면 default initializer 사용 불가
- 함수임. func 없는 함수.
- 예시
class Human { var age: Int = 10 var weight: Double = 35.8 //init이 있으면 초기값 필요 X func display() { print("나이: \(age), 몸무게: \(weight)") } init(yourAge: Int, yourWeight: Double) { age = yourAge weight = yourWeight } } var kim: Human = Human() //오류 //이유: init을 만들면 default initializer 사용 불가 var lee: Human = Human(yourAge: 40, yourWieght: 49.2) lee.display()
- designated initializer
- 모든 프로퍼티(예시에서 age, weight)를 초기화시키는 생성자
댓글
