[flutter]Dart 생성자 여러가지 사용법

2022. 8. 12. 01:38programing/flutter

반응형

일단 플러터를 시작한다고 하긴 했는데, dart라는 언어는 써본적도 없고 막막합니다~ 그러나 우리에겐 구글님이 있죠 ㅎㅎ 최대한 플러터 공식홈페이지를 활용 하려고 하긴 합니다만 영어울렁증 때문에 간단한건 한글로 구글링을 하게 되네요.. 여튼! Dart 생성자에 여러가지 사용법을 알아볼게요!

기본적으로 인자를 받아서 클래스내에 선언된 변수에 저장해주는 생성자로 예를 들어볼게요

첫번째, 기본형

class Fish {
  String? name;
  String? state;

  Fish(String? name, String? state) {
    this.name = name;
    this.state = state;
  }
}

이렇게, 사용하면 Fish('금붕어', '건강') 이런식으로 매개변수를 순차적으로 입력하여 사용해야합니다.

두번째, 형태

class Fish {
  String? name;
  String? state;

  Fish({String? name, String? state}) {
    this.name = name!;
    this.state = state!;
  }
}

이렇게 사용하면
Fish(
name: '금붕어',
state: '건강'
)
이런식으로 매개변수를 지정하여 생성자를 사용 할 수있습니다. 생성자를 사용 할 때 좀 더 명확하게 생성자를 호출 할 수있습니다.

세번째, 형태

import 'package:flutter/cupertino.dart';

class Fish {
  String? name;
  String? state;

  Fish({@required String? name, @required String? state}) {
    this.name = name!;
    this.state = state!;
  }
}
이렇게 사용하면

Fish(

  name: '금붕어',

  state: '건강'

)

이런식으로 매개변수 앞에 @required가 붙은 변수는 생성자 호출 시 필수적으로 인자로 넣어줘야 합니다. 생성자를 사용 할 때 두번째형태보다 좀 더 명확하게 생성자를 호출 할 수 있습니다.

마지막, 형태

이게 마지막인지 모르겠지만 제가 알고있는 마지막형태는

import 'package:flutter/cupertino.dart';

class Fish {
  String? name;
  String? state;

  Fish({this.name, this.state});
}
 
이렇게 사용하면

Fish(

  name: '금붕어',

  state: '건강'

)

이런식으로 (ㅎㅎ 세가지가 다 똑같네요^^) 호출했을때, this.name, this.state로 바로 부여 해버리는 형식입니다. 매개변수가 많아졌을땐 유용 할 수있겠네요.

간단한 생성자 사용법이었습니다.

하트나 댓글은 포스팅에 큰 도움이 됩니당♡

반응형