setter가 있으면 get{ }는 생략할 수 없음
매개변수명은 newValue가 기본, 이 경우 생략 가능 newValue가 아니라면 변수명을 써주어야 함
class Man{
var age : Int = 1 // stored property
var weight : Double = 3.5 // stored property
var manAge : Int{ //메서드 같지만 computed property
get{
return age-1
}
set(newValue){ //(newValue) 생략 가능
age = newValue + 1
}
}
func display(){
print("나이=\(age), 몸무게=\(weight)")
}
init(age: Int, weight : Double){
self.age = age
self.weight = weight
}
}
var kim : Man = Man(age:23, weight:95)
kim.display() //나이=23, 몸무게=95.0
print(kim.manAge) //22
kim.manAge = 3 //setter호출
print(kim.age) //4
'Swift' 카테고리의 다른 글
Swift 정리 : 스위프트 상속 (0) | 2022.11.01 |
---|---|
Swift 정리 : method overloading : 생성자 중첩 (0) | 2022.11.01 |
Swift 정리 : stored property(저장 프로퍼티)와 computed property(계산 프로퍼티) (0) | 2022.11.01 |
Swift 정리 : 인스턴스 초기화 init() / Self (0) | 2022.10.18 |
Swift 정리 : 클래스 메소드 (0) | 2022.10.18 |