Një kufizim i përgjithshëm (T extends ...) kufizon cilat lloje mund të jetë një parametër i përgjithshëm, në mënyrë që të mund të përdorni me siguri veti ose metoda të caktuara në të. Pa një kufizim, një gjenerik mund të jetë çdo gjë, kështu që nuk mund të supozoni se ka ndonjë anëtar.
longestBad<T>(: T, : T) {
a. > b. ? a : b;
}
longest<T { : }>(: T, : T): T {
a. > b. ? a : b;
}
(, );
([, ], []);
(, );
