Dart - Redirecting constructors

박정규·2022년 1월 24일
2

Redirecting constructors란?

때때로 생성자의 유일한 목적은 동일한 클래스의 다른 생성자로 리디렉션하는 것입니다. 리디렉션 생성자의 본문은 비어 있으며 콜론(:)을 사용하여 생성자를 동일한 클래스의 다른 생성자로 리디렉션할 수 있습니다.

어떻게 생성할까?

예시 코드를 통해 확인해보자

class Color {
  int red;
  int green;
  int blue;
  
  Color(this.red, this.green, this.blue);

  Color.black() : this(0, 0, 0);
  
}

class Color에서 지정한 숫자 변수 red, green, blue를 Redirecting constructors를 통해 새로운 생성자로 리디섹션하는 모습을 우린 확인할 수 있다.

또 다른 예시

void main() {
  
  Idol hello = new Idol('정규','소다');

hello.say();
}


class Idol{
  String name;
  String group; 
  
  Idol(
  String name,
  String group,  //직접 외부에서 입력을 받겠다 라는 뜻
  ) : this.name = name,
    this.group = group;  //this를 통해 외부에서 가져온 이름을 위에 class에 각각 저장한다.
  
  void say(){
  print('저는 ${this.name}이고 ${this.group}소속입니다.');
}
}
profile
초보 개발자

0개의 댓글