
인스턴스 (Instance) 및 인스턴스 메서드 (Instance Methods)
인스턴스(Instance)
인스턴스는 클래스, 구조체, 열거형 등의 타입을 실제로 구현한 객체입니다. 인스턴스는 해당 타입의 프로퍼티와 메서드를 가지고 있으며, 이를 통해 특정 기능을 수행할 수 있습니다.
예를 들어, Person 클래스의 인스턴스는 name, age 등의 프로퍼티와 introduce(), birthday() 등의 메서드를 가질 수 있습니다. 이를 통해 각각의 Person 인스턴스는 자신만의 고유한 데이터와 기능을 가질 수 있습니다.
인스턴스 메서드(Instance Methods)
인스턴스 메서드는 특정 인스턴스에 속하는 함수입니다. 인스턴스 메서드는 해당 인스턴스의 프로퍼티에 접근하거나 수정할 수 있으며, 인스턴스의 기능을 구현할 수 있습니다.
인스턴스 메서드 특징
- 인스턴스 메서드는 self 키워드를 통해 현재 인스턴스에 접근할 수 있습니다.
- 인스턴스 메서드는 인스턴스의 프로퍼티를 읽거나 수정할 수 있습니다.
- 인스턴스 메서드는 인스턴스의 기능을 구현할 수 있습니다.
인스턴스 메서드 사용 예시
class Person {
var name: String
var age: Int
init(name: String, age: Int) {
self.name = name
self.age = age
}
func introduce() {
print("Hello, my name is \(self.name) and I'm \(self.age) years old.")
}
func birthday() {
self.age += 1
print("\(self.name) just had a birthday! They are now \(self.age) years old.")
}
}
let john = Person(name: "John", age: 30)
john.introduce() // "Hello, my name is John and I'm 30 years old."
john.birthday() // "John just had a birthday! They are now 31 years old."
위 예시에서 Person 클래스의 인스턴스 메서드인 introduce()와 birthday()는 각각 인스턴스의 name과 age 프로퍼티를 사용하여 기능을 구현하고 있습니다.
인스턴스 메서드는 인스턴스의 데이터와 기능을 캡슐화하여 제공함으로써, 객체 지향 프로그래밍의 핵심 원칙인 캡슐화와 정보 은닉을 실현할 수 있습니다.
'걔 (개발)로그 > Swift' 카테고리의 다른 글
| Swift에서 프로퍼티 (Properties)와 메서드 (Methods) (0) | 2024.05.17 |
|---|---|
| Swift에서 상속 (Inheritance) (0) | 2024.05.17 |
| Swift에서 UserDefaults의 정체 (0) | 2024.05.16 |
| Swift에서 옵셔널의 모든 것 (1) | 2024.05.16 |
| Swift에서의 전달인자(Argument), 매개변수(Parameter), 반환타입(Return Type) | 이건 또 뭐여 (0) | 2024.05.15 |