Initializer 의 역할

AsherKim·2023년 11월 24일

[Swift] 문법 정리

목록 보기
1/3

Initializer 의 역할은 무엇일까?

  1. 메모리 공간 할당: 이니셜라이저는 객체가 사용할 메모리 공간을 할당한다. 메모리 공간에는 객체의 프로퍼티들이 저장된다. 이 때, 클래스의 경우에는 참조 타입으로 동작하며, 인스턴스의 참조가 할당된다. 구조체나 열거형의 경우에는 값 타입으로 동작하며, 해당 인스턴스가 직접 메모리에 저장된다.
  2. 프로퍼티 초기화: 이니셜라이저는 객체의 프로퍼티들을 초기화한다. 프로퍼티 초기화는 객체가 올바른 상태로 사용될 수 있도록 하는 핵심적인 역할을 한다. 이 단계에서 필요한 경우, 매개변수를 통해 받은 값들을 객체의 프로퍼티에 할당하거나, 초기값을 설정한다.
    • 이니셜라이저(Initializer)는 클래스, 구조체, 열거형 등의 인스턴스를 생성하고 초기화하는 특별한 메서드
class Person {
    var name: String
    var age: Int

    // 이니셜라이저 정의
    init(name: String, age: Int) {
        // 메모리 할당 및 프로퍼티 초기화
        self.name = name
        self.age = age
    }
}

// 이니셜라이저를 사용하여 객체 생성
let student = Person(name: "Asher", age: 25)
  1. 메모리 할당:
  • Person 클래스의 인스턴스인 person1을 생성할 때, 시스템은 메모리에 객체를 위한 공간을 할당한다.
  1. 프로퍼티 초기화:
  • 이니셜라이저가 호출될 때, 매개변수 nameage를 받아서 객체의 프로퍼티에 할당한다. 이로써 student 객체는 name이 "Asher"이고 age가 25인 상태로 초기화된다.

이렇게 하면 student 객체는 할당받은 메모리 공간에 적절한 값들을 초기화하여 사용할 수 있는 상태가 된다. 초기화가 완료된 객체는 이후에 프로그램에서 사용될 수 있다.

profile
떠오르는 개발자

0개의 댓글