이번에는 타입 프로퍼티의 역할을 학습해보자.
Type Property (타입 프로퍼티)
모든 타입이 공통적인 값을 정의하는 역할을 한다.
특징
1) 클래스, 구조체, 열거형에서 사용된다
2) 저장 타입 프로퍼티와 연산 타입 프로퍼티가 존재하며 저장 타입 프로퍼티의 경우 항상 초기화가 되어 있어야 한다
3) static을 이용해 선언하며, 자동으로 lazy로 작동한다
종류
static | class | |
저장 프로퍼티 사용 가능 | O | X |
연산 프로퍼티로 사용 가능 | O | X |
오버라이딩 가능 | X | O |
예시 코드
class Human {
static var typeStoredProperty1: String = "HELLO"
// ❌ 에러발생
class var typeStoredProperty2: String = "HELLO2" // class는 저장으로 사용불가
static var typeComputedProperty1: String {
return typeStoredProperty1
}
class var typeComputedProperty2: String {
return typeStoredProperty1
}
}
class SmallHuman : Human {
static var typeStoredProperty3 = "HELLO3"
override class var typeComputedProperty2: String {
return typeStoredProperty3
}
// ❌ 에러발생 , typeStoredProperty1는 static이라 override 불가
override static var typeStoredProperty1: String {
return typeStoredProperty3
}
}
'프로그래밍언어 > swift' 카테고리의 다른 글
접근 제한자 (0) | 2024.08.25 |
---|---|
property 학습하기 (4) [ Property Observer ] (0) | 2024.08.25 |
property 학습하기 (2) [ computed Property ] (0) | 2024.08.25 |
property 학습하기 (1) [ Stored Property ] (0) | 2024.08.25 |
protocol 학습하기 (4) [ any, some ] (0) | 2024.08.25 |