"Hallo, Amigo! Vandaag zal Bilaabo het hebben over de volgorde waarin variabelen worden geïnitialiseerd ."
Stel je voor dat je naar een code kijkt. Welke waarden krijgen de variabelen?
Code
class Cat
{
public int a = 5;
public int b = a + 1;
public int c = a * b;
}
Code
class Cat
{
public int a = getSum();
public int b = getSum() - a;
public int c = getSum() - a - b;
public int getSum()
{
return a + b + c;
}
}
"Mag dat echt?"
"Natuurlijk. De volgorde waarin de lidmethoden en velden van een klasse worden gedeclareerd, is niet belangrijk. "
Een klasse wordt van boven naar beneden geladen, dus het is belangrijk dat een veld alleen toegang heeft tot andere velden die al zijn geladen. In het voorbeeld heeft b toegang tot a , maar het weet niets over c .
"En wat zal er gebeuren?"
"Wanneer variabelen worden gemaakt, krijgen ze standaardwaarden."
Code | Wat gebeurt er echt |
---|---|
|
|
|
|
"Holy moly! Het is zo simpel. Dank je, Bilaabo. Je bent een echte vriend!"
"Hoera! Bilaabo heeft een vriend!"
GO TO FULL VERSION