관리 메뉴

스윞한 개발자

Swift 기초문법 - 객체 생성자, 해제자 본문

Swift 이론

Swift 기초문법 - 객체 생성자, 해제자

스윞남 2024. 1. 23. 01:27
728x90
반응형
SMALL

이번에 볼 기초문법은 객체 생성자! 해제자! 입니다.

 

 

Swift에서 객체 생성자와 해제자는 클래스의 인스턴스를 초기화하고 메모리를 할당 및 해제하는 역할을 수행하는 특수한 메소드입니다.

 

1. 객체 생성자(Initializer) : 

* 객체 생성자는 클래스의 인스턴스를 초기화하는 역할을 합니다.
* 'init' 키워드를 사용하여 정의하며, 클래스 내부에 선언합니다.
* 객체 생성자는 클래스의 속성을 초기화하거나 다른 초기화 작업을 수행할 수 있습니다.
* 객체 생성 시 호출되며, 생성자의 매개변수를 통해 초기값을 전달할 수 있습니다.

 

*반환값은 존재하지 않습니다.

class Person {
    var name: String
    
    init(name: String) {
        self.name = name
    } }
    let person = Person(name: "John")
    print(person.name) // "John"

 

2. 객체 해제자(Deinitializer) : 

* 객체 해제자는 클래스의 인스턴스가 메모리에서 해제될 때 호출되는 메소드입니다.
* 'deinit' 키워드를 사용하여 정의하며, 클래스 내부에 선언합니다.
* 객체 해제자는 메모리 해제 직전에 필요한 정리 작업을 수행할 수 있습니다.
* 객체 해제자는 클래스에 한 개만 정의할 수 있으며, 자동으로 호출되므로 직접 호출할 필요가 없습니다.

 

class Person {
    var name: String
    
    init(name: String) {
        self.name = name
    }
    
    deinit {
        print("Person instance is being deallocated")
    }}
    var person: Person? = Person(name: "John")
    person = nil
728x90
반응형
LIST