Junior — Middle
Чӣ гуна дастгирии намудҳои умумӣ дар забони Dart амалӣ карда шудааст?
sobes.tech AI
Ҷавоб аз AI
Дар тилида, умумий турлар ёрдамида класслар, методлар ва функцияларни параметрлаш орқали қўллаб-қувватлаш амалга оширилади. Бу турли маълумот турлари билан ишлашга имкон берадиган универсал компонентларни яратишга ва шу билан бирга тур хавфсизлигини сақлашга ёрдам беради.
Дарда умумий турлар <T> ёзуви орқали белгиланади, бу ерда T тур параметридир.
Умумий класснинг мисоли:
class Box<T> {
T value;
Box(this.value);
void updateValue(T newValue) {
value = newValue;
}
}
void main() {
var intBox = Box<int>(123);
var strBox = Box<String>("салом");
intBox.updateValue(456);
strBox.updateValue("дунё");
}
Дарда тур параметрларининг чекловлари (чегаралари) ҳам қўллаб-қувватланади, масалан:
class NumberBox<T extends num> {
T value;
NumberBox(this.value);
}
Шу тариқа, дар тилида умумий турлар тил даражасида параметрлаш ва чекловлар билан амалга оширилган бўлиб, бу элаки ва тур хавфсиз код ёзишга имконият яратади.