인스턴스를 생성하고.. 객체의 메서드를 통해 프로퍼티를 어쩌고 저쩌고.. 개발 관련 블로그를 자주 보는 사람이라면 이런 용어가 굉장히 많이 사용되는 것을 공감하실텐데요. 이 글에서는 인스턴스, 프로퍼티, 객체, 메서드 요녀석들의 차이점을 정리해보겠습니다!
Swift 에서는 클래스(class), 구조체(struct), 열거형(enum)에서 생성된 객체를 '인스턴스'라고 부릅니다.
쉽게 설명하자면 붕어빵 틀인 클래스로 찍어낸 맛있는 붕어빵이 인스턴스인 셈입니다.
var 철수: Person = Person()
그런데 이 인스턴스를 설명할때 조차도 객체라는 단어가 사용되었는데, 객체란 결국 인스턴스의 다른 말이라고 할 수 있습니다. (두 용어 모두 클래스, 구조체, 열거형을 통해 생성된 실체를 나타냅니다!)
클래스를 예로 조금 더 자세히 설명하자면, '인스턴스' 라는 용어는 클래스의 실체를 생성할 때 주로 사용되고, 객체라는 용어는 인스턴스가 생성된 후 클래스에서 제공하는 프로퍼티나 메서드를 사용할 때 주로 사용합니다. 🥳
객체를 설명하자니 또 프로퍼티와 메서드라는 용어가 사용되었군요.. 🥲
프로퍼티는 클래스(class), 구조체(struct), 열거형(enum)과 관련되어 있는 정보 또는 값을 의미합니다. 즉, 클래스, 구조체, 열거형 안에 만들어진 변수죠!
struct Person {
var name: String
var height: Int
}
메서드는 클래스(class), 구조체(struct), 열거형(enum)과 관련된 함수를 의미합니다.
class Calculate {
func sum(a: Int, b: Int) -> Int {
return a + b
}
}
글 읽어주셔서 감사합니다. 😊
질문과 지적은 환영입니다!