[swift] Swift에서의 초기화 메서드와 선택적(Optional) 프로퍼티

Swift는 초기화를 위해 init 메서드를 제공합니다. 이를 통해 객체를 생성하고 초기값을 설정할 수 있습니다. 이번 글에서는 Swift에서의 초기화 메서드와 선택적(Optional) 프로퍼티에 대해 알아보겠습니다.

초기화 메서드

Swift에서는 클래스나 구조체의 초기화를 위해 init 메서드를 사용합니다. 이 메서드는 객체 생성 시 실행되며, 객체의 프로퍼티를 초기화하고 필요한 설정을 수행합니다.

class Person {
    var name: String
    var age: Int

    init(name: String, age: Int) {
        self.name = name
        self.age = age
    }
}

위의 예제에서 Person 클래스는 nameage라는 두 개의 프로퍼티를 가지고 있습니다. init(name:age:) 메서드를 통해 이 프로퍼티들을 초기화하고 있습니다.

let person = Person(name: "John", age: 25)

위의 코드를 통해 person 객체를 생성하고 nameage 프로퍼티를 초기화하였습니다.

선택적(Optional) 프로퍼티

Swift에서는 선택적(Optional) 프로퍼티를 사용하여 값을 설정하지 않아도 되는 프로퍼티를 정의할 수 있습니다. 선택적 프로퍼티는 값이 있을 수도 있고, 없을 수도 있는 상태를 나타냅니다.

class Person {
    var name: String
    var age: Int?
    
    init(name: String, age: Int?) {
        self.name = name
        self.age = age
    }
}

위의 예제에서 age 프로퍼티는 Int? 타입으로 정의되어 있습니다. 이는 age 값이 있을 수도 있고, 없을 수도 있다는 의미입니다.

let person1 = Person(name: "John", age: 25)
let person2 = Person(name: "Amy", age: nil)

위의 코드를 통해 person1 객체는 nameage 프로퍼티를 모두 가지고 있지만, person2 객체는 age 프로퍼티가 nil로 설정되어 있습니다.

정리

Swift에서는 초기화를 위한 init 메서드를 사용하여 객체의 프로퍼티를 초기화할 수 있습니다. 선택적 프로퍼티를 사용하면 값이 있을 수도 없을 수도 있는 상태를 나타낼 수 있습니다. 이를 통해 유연한 코드를 작성할 수 있습니다.

더 자세한 내용은 Swift 공식 문서를 참고하시기 바랍니다.