프로그래밍/Flutter & Dart
[Flutter] Class, constructor, property
소꿍
2021. 8. 15. 19:46
아래와 같이 Person 클래스를 정의한다고 해 보자.
class Person {
// property
double height;
int age = 0;
// constructor
Person({double startingHeight}) {
height = startingHeight;
}
// method
void grow(int numberOfYears) {
age = age + numberOfYears;
}
}
Person 클래스는 double 타입의 height과 int 타입의 age를 property로 갖는다. (멤버 변수)
생성자를 선언할 때 {}, named parameter를 사용했는데,
this keyword를 사용해 생성자를 선언할 때는 named parameter 적용이 optional이라고 한다.
parameter가 2개 이상인 경우 함수 정의 시 named parameter를 지정할 수 있는데,
방법은 parameter 전체를 {}로 감싸면 된다.
void func({int a, string b}) {
print('$a and $b');
}
func(1, 'a'); // 가능
func('a', 1); // 가능
{}로 parameter를 감싸면, 해당 함수를 호출할 때 parameter 순서를 바꾸어 호출해도 문제가 되지 않는다.