A kérdésekre adott válaszok az interjút level29

A kérdésekre adott válaszok az interjút Level29

1 Mi autoboxing?
Avtoupakovka mechanizmus implicit inicializálási objektum osztályok szűrők (Byte, Short, Character, Integer, Long, Float, Double) értékek megfelelő eredeti primitív típusok (ill. Byte, rövid, char, int, hosszú, úszó, dupla), anélkül, hogy az expressz használja a kivitelező.
Avtoupakovka történik közvetlen hozzárendelését primitív - a wrapper osztály (a „=”), vagy az átviteli paramétereket a primitív ( „wrapper class” típus) módszerrel. Avtoupakovke a „wrappers” lehet alávetni, mint egy primitív változó típusok, és összeállítja-időállandó (literálok és záró-primitívek). Így literálok kell szintaktikailag helyes inicializáló változó forrás ősi típus.

Avtoupakovka változók primitív típusok igényel pontosan megegyezik az eredeti primitív típus - a fajta „class-wrapper”.
Például egy kísérlet avtoupakovat byte típusú változó Rövid nélkül explicit konverzió bájt-> rövid összeállítás, ami hibát okozhat.

Avtoupakovka állandók primitív típusok lehetővé teszik a nagyobb megfelelés határokat. Ebben az esetben a fordító képes gyakorolni pre implicit kinyúló / típus primitívek. Átalakítás zajlik két szakaszból áll:
1) implicit tágulási (összehúzódás) az eredeti típusú primitív primitív típusú megfelelő wrappers (átalakítására int-> Byte, első fordító implicit int szűkül byte)
2) a megfelelő avtoupakovku primitív "wrapper class" (compiler avtoupakovyvaet bájt-> Byte). Azonban van két további korlátozások ebben az esetben:
a) hozzárendelésével primitív - „wrap” lehet csak az üzemeltető „=” (nem tudja átadni egy ilyen szervezet a módszer paramétereinek nélkül explicit típus öntés)
b) a típus a bal oldali operandusa nem lehet régebbi, mint karakter, nem a megfelelő típusú dozhen idősebb int, (megengedett tágulási / összehúzódási bájt <-> Röviden, bájt <-> char, rövid <-> faszén
és az egyetlen korlátozás byte <— int, short <— int, char <— int, все остальные варианты требуют явного приведения типов)

Kapcsolódó cikkek