Junior — Middle
Kas traucē izmantot pamattipus ģenerisko parametru ietvaros?
sobes.tech AI
Atbilde no AI
Java generics tiek īstenoti ar tipaizsniegšanas (type erasure) veidā, kas nozīmē, ka informācija par ģenerisko parametru tipiem nav pieejama izpildes laikā.
Tādēļ primitivie tipi (int, boolean utt.) nevar tikt izmantoti kā ģeneriskie parametri, jo tie nav objekti un nevar tikt attēloti kā klase.
Piemēram, ir nepareizi rakstīt:
List<int> skaitļi; // Kļūda
Tā vietā jāizmanto apvalka tipi:
List<Integer> skaitļi; // Pareizi
Tas ir tāpēc, ka ģeneriki darbojas tikai ar objektu tipiem, bet primitivie tipi nav objekti.