import 'package:uuid/uuid.dart';
const uuid = Uuid();
class Expense {
Expense({
required this.title,
required this.amount,
required this.date,
}) : id=uuid.v4();
final String id;
final String title;
final double amount;
final DateTime date;
}
이 클래스를 생성(인스턴스화)할 때마다 대한 고유 ID를 생성하고 싶다면 생성자 함수의 괄호를 닫은 다음에 초기화 목록(:
)이라는 걸 추가할 수
있다.
이 콜론 다음에 이 생성자 함수가 클래스의 속성을 초기화할 수 있다.
그리고 여기서 동적으로 id값을 생성하기위해 Uuid를 사용한다.
이때 v4 메서드를 사용한다. 이는 고유 ID를 생성한다.
이때 최상단 Uuid 객체를 선언한 곳에서 Uuid 자체가 const 생성자를 지원하기 때문에 상수라고 선언할 수 있다.
그리고 const 키워드를 제일 앞에 붙여 생성자와 변수모두를 상수로 선언할 수 있다.