본문 바로가기
iOS/Swift 문법 복습

(인스턴스, 스태틱, 클래스) 메서드

by 황민우 2022. 6. 30.

메서드의 종류

- 인스턴스 메서드(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:티스토리]

내용 출처

https://thoonk.tistory.com/55

 

[Swift] Instance, Static, Class Method

스위프트의 메서드에 관해 기록하겠습니다. 스위프트의 메서드로는 Instance, Static, Class가 있습니다. instance 메서드 우선, instance 메서드는 클래스를 만들고 해당 클래스의 인스턴스 생성을 통해

thoonk.tistory.com

https://medium.com/@miles3898/swift%EC%9D%98-static-%EB%A9%94%EC%84%9C%EB%93%9C%EC%99%80-class-%EB%A9%94%EC%84%9C%EB%93%9C-975d367c4c19

 

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

댓글