A generic constraint (T extends ...) ข้อจำกัดว่าอะไรคือประเภทที่พารามิเตอร์ทั่วไปสามารถเป็นได้ เพื่อให้คุณสามารถใช้คุณสมบัติหรือวิธีการบางอย่างบนมันได้อย่างปลอดภัย โดยไม่มีข้อจำกัด ทั่วไปสามารถเป็น อะไรก็ได้ ดังนั้นคุณไม่สามารถสันนิษฐานว่ามันมีสมาชิกใด ๆ
longestBad<T>(: T, : T) {
a. > b. ? a : b;
}
longest<T { : }>(: T, : T): T {
a. > b. ? a : b;
}
(, );
([, ], []);
(, );
