개발하는 두더지

Flutter - dart로 클래스 생성자 파라미터를 optional 하게 만들어보기 본문

Flutter

Flutter - dart로 클래스 생성자 파라미터를 optional 하게 만들어보기

덜지 2019. 4. 20. 00:48

dartpad dart 코드를 자유롭게 실행시켜볼 수 있는 콘솔

dart로 클래스 생성자 파라미터를 optional 하게 만들어보기

생성자를 만들때 {} 로 감싸고 각 멤버변수들을 초기화시켜주면 optional 하게 만들 수 있다.
아래 코드에서 볼 수 있듯이 생성자에서 : 를 이용하여 특정 멤버변수만 값을 지정할 수 있다.

import 'dart:math';

class Rectangle {
  int width;
  int height;
  Point origin;

  Rectangle({this.origin = const Point(0,0), this.width = 0, this.height = 0});

  @override
  String toString() => 'origin x: ${origin.x}  origin y : ${origin.y} width : $width  height : $height';
}

main() {
  print(Rectangle(origin: const Point(10, 20), width: 10, height: 20));
  print(Rectangle(origin: const Point(10, 20), width: 10));
  print(Rectangle(width: 10));
  print(Rectangle(height: 10));
  print(Rectangle());
} 

이 코드의 결과물은 아래와 같다
origin x: 10 origin y : 20 width : 10 height : 20
origin x: 10 origin y : 20 width : 10 height : 0
origin x: 0 origin y : 0 width : 10 height : 0
origin x: 0 origin y : 0 width : 0 height : 10
origin x: 0 origin y : 0 width : 0 height : 0

Comments