Обобщенный класс в Dart
Параметр типа можно задать не только у функции, но и у класса. Имя в угловых скобках после имени класса участвует в типе полей и в типе самого объекта.
Коробка держит одно значение и отдает его через поле:
class Box<T> {
T value;
Box(this.value);
}
final textBox = Box("note");
final numBox = Box(100);
print(textBox.value);
print(numBox.value);
Тип Box<String> и Box<int> различается:
из первой читают строку, из второй - число.
Параметр T в конструкторе задает тип
value:
class Box<T> {
T value;
Box(this.value);
String describe() {
return "holds ${value.runtimeType}";
}
}
final box = Box([1, 2]);
print(box.describe());
Сделайте класс Employee с одним параметром
типа и полем для хранимого значения. Создайте
объект со строкой "kit" и выведите
поле.
Добавьте метод, который принимает второе
значение того же типа и возвращает список
из поля и этого аргумента. Для объекта
со строкой "a" и аргумента "b"
выведите список.