Get/ Set
타 언어와 마찬가지로 Dart에도 get, set이 존재한다.
get, set은 일반 변수와 동일한 방식으로 값을 정의하고 참조 할 수 있다.
변수로 취급된다고 볼 수 있으며 따라서 다른 변수 명과 중복될 수 없다.
get과 set끼리는 중복이 가능하다.
변수를 정의하고 참조할 때는 해당 행위가 그 변수의 값에만 접근하지만, get, set을 사용하면 변수에 접근함과 동시에
다른 행위도 함께 수행 할 수 있다.
예제
void main() {
myClass myclass = myClass('플러터', 1);
//get
//일반 변수의 형태로 값을 참조한다.
print(myclass.name);
//set
//일반 변수와 동일하게 값을 지정한다.
myclass.name = '리액트';
}
class myClass{
myClass(this._name, this._number);
var _name;
var _number;
get name {
print('my name is ');
return _name;
}
set name(String value) {
print('but i love');
_name = value;
print(_name);
}
}
결과
일반 클래스가 아닌 stateful 클래스라면 set 타입에 setState()를 동작시키기도 한다.
'Flutter > Dart' 카테고리의 다른 글
[플러터/다트] where 함수 (JS의 Filter) (1) | 2021.01.25 |
---|---|
[플러터/다트]map() 함수 (0) | 2021.01.23 |
[플러터/다트] 메모리 주소로 전달되는 List (0) | 2021.01.23 |
[다트/플러터] 클래스 생성자 (0) | 2021.01.19 |
[플러터/다트] 열거 타입 enum (0) | 2021.01.14 |