swift 문법 총정리(10) Initialization & Deinitilization
Updated:
Initialization
초기화
인스턴스 생성
class Score{
var homeTeamScore: Int
var awayTeamScore: Int
func totalScore() -> Int{
return homeTeamScore + awayTeamScore
}
init() {
homeTeamScore = 5
awayTeamScore = 5
}
//인스턴스가 만들어 질 때 무조건 실현된다.
//변수에 값을 할당하면 괜찮은데 안했으면 init이 필요하다.
//예외 : optional로 변수를 선언하면 nil값이 들어올 수 있다는 이야기고, init()을 하지않아도 괜찮다.
}
struct ScoreStruct {
var homeTeamScore: Int
var awayTeamScore: Int
func totalScore() -> Int{
return homeTeamScore + awayTeamScore
}
init(){
homeTeamScore = 2
awayTeamScore = 4
}
}
//class와 똑같다.
var ss = Score()
//이 형태가 initialization
//인스턴스 생성
//클래스 내부를 사용할 수 있게 준비한다.
Deinitilization
초기화 해제
deinit{
}
해당되는 클래스가 해제되는 순간에 취하는 액션.
class Score{
init() {
print("생성되는 시점에 호출")
}
deinit() {
print("소멸되는 시점에 호출")
}
}
var myScore: Score? = Score()
//생성되는 시점에 호출
myScore = nil
// 초기화 해체
// 소멸되는 시점에 호출
Reference
인프런 강의
Leave a comment