Swift
[Swift] class 키워드 vs static 키워드
Sky Titan
2021. 6. 2. 20:33
728x90
[Swift] class func vs static func
타입 메소드 &타입 프로퍼티 알아보기
sujinnaljin.medium.com
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