Swift에서는 클래스의 초기화 과정에 속성을 설정하는데 사용되는 초기화 메서드(Initializer)와 함께 클래스 속성을 선언할 수 있습니다. 클래스 속성은 클래스 인스턴스마다 동일한 값을 가지는 공유 속성입니다.
클래스 속성 선언
클래스 내부에서 클래스 속성을 선언하려면 static
키워드를 사용합니다. static
키워드를 통해 해당 속성이 인스턴스에 종속되지 않는 전역 속성임을 나타냅니다. 클래스 속성은 클래스가 처음 로드되었을 때 한 번 초기화되며, 이후로는 값을 변경할 수 없습니다.
class MyClass {
static let sharedProperty = "Shared Property"
}
위의 예제에서 sharedProperty
는 MyClass
의 클래스 속성으로 선언되었습니다. 이 속성은 let
으로 선언되었으므로 값을 변경할 수 없습니다.
클래스 속성 사용하기
클래스 속성은 클래스 이름을 통해 접근할 수 있습니다. 클래스 속성에 접근할 때는 클래스이름.속성이름
형식으로 접근하면 됩니다.
print(MyClass.sharedProperty) // "Shared Property"
위의 예제에서 MyClass.sharedProperty
를 호출하여 클래스 속성에 접근하고 있습니다.
초기화 메서드에서 클래스 속성 사용하기
초기화 메서드에서 클래스 속성을 사용할 수 있습니다. 초기화 메서드는 인스턴스가 생성될 때 호출되는 메서드로, 인스턴스를 초기화하는 역할을 합니다. 초기화 메서드에서 클래스 속성에 접근할 때는 클래스이름.속성이름
형식으로 접근하면 됩니다.
class MyClass {
static let sharedProperty = "Shared Property"
let instanceProperty: String
init() {
instanceProperty = MyClass.sharedProperty
}
}
위의 예제에서 MyClass
에는 sharedProperty
라는 클래스 속성과 instanceProperty
라는 인스턴스 속성이 있습니다. 초기화 메서드 init()
에서 instanceProperty
를 MyClass.sharedProperty
로 초기화하고 있습니다.