"Helló, Amigo! Ma Bilaabo a változók inicializálásának sorrendjéről fog beszélni ."
Képzeld el, hogy valami kódot nézel. Milyen értékeket kapnak a változók?
Kód
class Cat
{
public int a = 5;
public int b = a + 1;
public int c = a * b;
}
Kód
class Cat
{
public int a = getSum();
public int b = getSum() - a;
public int c = getSum() - a - b;
public int getSum()
{
return a + b + c;
}
}
– Ez tényleg megengedett?
"Természetesen. Az osztály tagmetódusainak és mezőinek deklarálási sorrendje nem fontos. "
Az osztály felülről lefelé töltődik be, ezért fontos, hogy egy mező csak más, már betöltött mezőket érjen el. A példában b hozzáférhet a -hoz , de nem tud semmit a c -ről .
– És mi lesz?
"Amikor a változókat létrehozzák, alapértelmezett értékeket kapnak."
Kód | Mi történik valójában |
---|---|
|
|
|
|
"Szent Moly! Olyan egyszerű. Köszönöm, Bilaabo. Igazi barát vagy!"
"Hurrá! Bilaabónak van egy barátja!"