본문 바로가기
프로그래밍/Flutter & Dart

[Flutter] Class, constructor, property

by 소꿍 2021. 8. 15.

아래와 같이 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 순서를 바꾸어 호출해도 문제가 되지 않는다.

댓글