타입을 원하는 형태로 정의
타입 안전 효과
타입이 없으면 런타임 에러 및 컴파일 에러 미연에 방지하기 어려움
class Pocket<E> {
E? _data;
void put(E data) => _data = data;
E? get() => _data;
}
제네릭 메소드 예시
T first<T>(List<T> ts) {
// Do some initial work or error checking, then...
T tmp = ts[0];
// Do some additional checking or processing...
return tmp;
}
ref) “Generics”, 23.12.09, https://dart.dev/language/generics