Swift(13) Type Property

개발렬·2023년 7월 14일
0

Swift

목록 보기
13/23
post-thumbnail

Type Property

특정한 타입 자체에 속하는 속성입니다.
인스턴스가 아닌 타입 전체에 속하는 속성으로, 타입 속성은 클래스(class), 구조체(struct), 열거형(enum) 등의 타입에서 사용할 수 있습니다.

타입 속성은 해당 타입의 모든 인스턴스가 공유하는 값이며, 인스턴스마다 개별적으로 저장되는 것이 아닙니다. 타입 속성은 static 키워드를 사용하여 선언하거나, 타입이 클래스인 경우 class 키워드를 사용하여 서브클래스에서 재정의할 수 있는 속성으로 선언할 수도 있습니다.

struct Car {
    static var numberOfWheels = 4
    static let manufacturer = "Tesla"
    
    static func startEngine() {
        print("Engine started")
    }
}

print(Car.numberOfWheels)   // 출력: 4
print(Car.manufacturer)     // 출력: Tesla

Car.startEngine()           // 출력: Engine started

타입 속성의 장점

타입 속성은 타입 자체에 속하기 때문에 인스턴스를 생성하지 않고도 타입 이름을 통해 접근할 수 있습니다.
타입 속성은 타입의 상태를 나타내거나, 타입에 특정한 동작을 수행하는 데 사용될 수 있습니다.

  1. 값을 타입 수준에서 공유: 타입 속성은 해당 타입의 모든 인스턴스가 공유하는 값입니다. 인스턴스마다 개별적으로 저장되지 않으며, 타입 수준에서 관리됩니다. 이로 인해 메모리 사용량을 줄이고, 공유 데이터를 효율적으로 관리할 수 있습니다.

  2. 편리한 접근성: 타입 속성은 타입 이름을 통해 직접 접근할 수 있으므로, 인스턴스를 생성하지 않고도 속성에 접근할 수 있습니다. 이는 타입에 관련된 설정, 상수, 공통 상태 등에 편리하게 접근할 수 있도록 해줍니다.

  3. 타입 확장: 타입 속성은 타입 확장(Type Extension)에서 추가할 수도 있습니다. 타입에 대한 확장을 통해 기존 타입에 속성을 추가하거나 기능을 확장할 수 있습니다. 이는 코드의 가독성과 모듈성을 향상시키는 데 도움을 줍니다.

profile
Flutter, iOS...나는 모바일 앱 개발자

0개의 댓글