728x90
class 키워드 vs static 키워드
- 둘 다 하는 역할은 동일하게 property, method를 해당 클래스에서 정적으로 쓰이게 한다.
- 하지만 class는 하위 클래스에서 override가 가능하다는 점이 다르다.
- 단, property의 경우 무조건 Computed Property에만 class 키워드를 사용 가능하다.
- 또한 class 키워드는 struct나 enum 같은 override가 불가능한 value type에선 사용이 불가능하고 Class에서만 사용가능
import Foundation
class A {
static var name: String = "name_for_A"
class var age: Int {
return 15
}
class func printInfo() {
print(name)
}
}
class B: A {
//하위 클래스에서 오버라이드 (단 프로퍼티는 무조건 Computed Property로만 사용 가능)
override class var age: Int {
return 20
}
override class func printInfo() {
print(age)
}
}
A.printInfo()
B.printInfo()
728x90
'Swift' 카테고리의 다른 글
[Swift] 스위프트 네이티브 객체 (0) | 2021.06.15 |
---|---|
[Swift] 가변매개변수 (Variadic Parameters) (0) | 2021.06.13 |
[Swift] ARC (Auto Reference Counting) (0) | 2021.05.31 |
[Swift] where절 (0) | 2021.05.31 |
[Swift] inout 파라미터 (0) | 2021.05.28 |
댓글