코딩하는 제리

[Swift] 클래스 메서드 (타입 메서드) 본문

iOS/SwiftUI

[Swift] 클래스 메서드 (타입 메서드)

JerryCho 2022. 1. 12. 08:27

- 클래스 레벨에서 동작함.
- 클래스의 새로운 인스턴스를 생성하는 것과 같은 동작.
- 타입 메서드는 인스턴스 메서드와 동일한 방법으로 선언하지만 class나 static 키워드를 앞에 붙여서 선언.
- class  키워드로 만든 클래스 메서드는 자식 클래스에서 override 가능.

class Man {
  var age: Int = 1
  var weight: Double = 3.5

  // 인스턴스 메서드
  func display() {
    print("\(age), \(weight)")
  }

  // 타입 메서드
  class func cM() {
    print("class 메서드")
  }
  static func scM() {
    print("static 메서드")
  }
}
// 일반적 호출 및 사용
var people: Man = Man()
people.display()

// 클래스 메서드 사용
Man.cM()
Man.scM()

 

Comments