메서드의 종류
- 인스턴스 메서드(Instance Method)
- 스태틱 메서드(Static Method)
- 클래스 메서드(Class Method)
1, 인스턴스 메서드
- 클래스를 통해 호출할 수 없고, 클래스를 실체화해 생성된 인스턴스를 통해 호출할 수 있는 메서드입니다.
class ExClass {
func instanceMethod() {
print("Instance")
}
}
let ex = ExClass()
ex.instanceMethod() // Instance
//출처: https://thoonk.tistory.com/55 [thoonk's record:티스토리]
2, 스태틱 메서드와 클래스 메서드 공통점
- 타입 메서드입니다.
- 인스턴스를 생성하지 않고 바로 접근하여 호출할 수 있습니다.
class ExClass {
static func staticMethod() {
print("Static")
}
class func classMethod() {
print("Class")
}
}
ExClass.staticMethod() // Static
ExClass.classMethod() // Class
//출처: https://thoonk.tistory.com/55 [thoonk's record:티스토리]
3, 스태틱 메서드와 클래스 메서드 차이점
스태틱 메서드
- 상속 후 메서드 재정의 불가능합니다.
- 구조체와 열거형은 static 메서드를 사용합니다.
클래스 메서드
- 상속 후 메서드 재정의 가능합니다.
- 클래스에서 static, class 모두 사용합니다.
class NewClass: ExClass {
// 오버라이딩 불가능 (컴파일 에러)
override static func staticMethod() {}
// 오버라이딩 가능
override class func classMethod() {}
}
//출처: https://thoonk.tistory.com/55 [thoonk's record:티스토리]
내용 출처
[Swift] Instance, Static, Class Method
스위프트의 메서드에 관해 기록하겠습니다. 스위프트의 메서드로는 Instance, Static, Class가 있습니다. instance 메서드 우선, instance 메서드는 클래스를 만들고 해당 클래스의 인스턴스 생성을 통해
thoonk.tistory.com
Swift의 static 메서드와 class 메서드
스위프트에서는 세 가지 종류의 메서드가 있습니다.
medium.com
'iOS > Swift 문법 복습' 카테고리의 다른 글
프로토콜 [Protocol] (0) | 2022.06.29 |
---|---|
옵셔널 [Optional] (0) | 2022.06.28 |
프로퍼티 (Properties) (0) | 2022.06.27 |
Struct와 Class, Enum의 차이를 설명하시오. (0) | 2022.06.25 |
댓글