– Szia Amigo!
– Mint már tudod, a névtelen belső osztályoknak nem lehet konstruktora.
"Igen. Nem túl kényelmes. A konstruktorok nagyon fontosak."
"A mondás szerint semmi sem lehetetlen, ha eléggé akarod."
"Ne feledje, a statikus változóknak nincs statikus konstruktora, de van egy statikus inicializátor - a statikus blokk."
– Igen, emlékszem.
"Az anonim belső osztályoknak pontosan ugyanaz az inicializálója van, csak nem statikus."
class Car
{
public ArrayListcreatePoliceCars(int count)
{
ArrayList result = new ArrayList();
for(int i = 0; i < count; i++)
{
final int number = i;
result.add(new Car()
{
int policeNumber;
{
policeNumber = number;
}
});
}
return result;
}
}
"Ezúttal a névtelen belső osztálykódot pirossal, az inicializálóját (valójában a konstruktorát) lilával emeltem ki. A "konstruktornak" van törzse, de nincs metódusaláírása:"
Elvárás | Valóság |
---|---|
|
|
"Egy ilyen osztályon belül deklarálhat változókat, és inicializálhatja őket az inicializálóban."
"Kiváló, most sokkal kevesebb korlátozás vonatkozik rájuk."
– Ezzel a belső órákat ismerkedünk meg, remélem tetszett.
– Nagyon sokat. Kim, Rishi és különösen te, Ellie tanulságai egyszerűen kiválóak voltak.
"Milyen édes beszélő! Folytasd…"
GO TO FULL VERSION