본문 바로가기
공부/스위프트

[스위프트] 인스턴스 메서드와 타입 메서드

by 초코팅촉 2024. 1. 3.
728x90

스위프트의 메서드에는 인스턴스 메서드와 타입 메서드 두 가지 종류가 있다.

이번에는 인스턴스 메서드와 타입 메서드, 이 두가지의 차이점에 대해 알아보자.

 

인스턴스 메서드

인스턴스 메서드란 우리가 흔히 쓰는 메서드이다.

왜 인스턴스 메서드냐면 인스턴스화 했을때 쓸 수 있는 메서드라 인스턴스 메서드다.

 

타입 메서드

타입 메서드란 흔히 static을 접두어로 붙이고 선언한 메서드를 말한다.

(마찬가지로 static을 붙인 프로퍼티는 타입 프로퍼티가 된다.)

이는 클래스나 구조체가 타입으로 선언되니까 호출 시에

"클래스(구조체) 명. 메서드명"

이렇게 호출할 수 있어서 타입메서드이다.(프로퍼티도 똑같다.)

 

하지만 중요한 건 타입메서드에는 두 가지가 있다.

static 메서드

class 메서드

 

static 메서드는 오버라이딩을 허용하지 않는다.

그에 반해 class 메서드는 오버라이딩을 허용한다.