[Swift] static

술술·2024년 3월 28일

TIL

목록 보기
14/21

메서드에는 두 가지 종류가 있다.

  • 인스턴스 메서드(Instance Method)
  • 타입 메서드(Type Method)


인스턴스 메서드(Instance Method)

  • 인스턴스를 만들어야 호출가능하다.
  • 아무런 수식어 없이 시작하는 메서드는 모두 인스턴스 메서드

class Person {
    func like() {
        print("like")
    }
}


  • 호출 방법
let person = Person()
person.like()
  • person 이라는 인스턴스를 먼저 생성
  • .을 사용해 메서드에 접근


타입 메서드(Type Method)

  • 타입과 관련된 메서드로, 인스턴스 생성없이 타입이름만 알면 호출 가능하다.
  • 메서드 선언 시 func이란 키워드 앞에 static 혹은 class가 붙으면, 그 메서드는 타입 메서드이다.
class Person {
    static func eat() {
        print("eat")
    }
    class func run() {
        print("run")
    }
}
  • eat, run 모두 타입 메서드



  • 호출 방법
// 타입.함수이름
Person.run()
Person.eat()


static, class

  • static : 오버라이딩을 금지한다.
  • class : 오버라이딩을 허용한다
profile
Hello

0개의 댓글