"Hello, Amigo! Ngayon, si Bilaabo ay magsasalita tungkol sa pagkakasunud-sunod kung saan ang mga variable ay sinisimulan ."

Isipin na tumitingin ka sa ilang code. Anong mga halaga ang nakukuha ng mga variable?

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;
 }
}

"Pwede ba talaga yun?"

"Siyempre. Ang pagkakasunud-sunod kung saan idineklara ang mga pamamaraan at field ng miyembro ng klase ay hindi mahalaga. "

Ang isang klase ay nilo-load mula sa itaas hanggang sa ibaba, kaya mahalaga na ang isang field ay nag-a-access lamang ng iba pang mga field na na-load na. Sa halimbawa, maaaring ma-access ng b ang a , ngunit wala itong alam tungkol sa c .

"At ano ang mangyayari?"

"Kapag ginawa ang mga variable, nakakakuha sila ng mga default na halaga."

Code Kung ano talaga ang nangyayari
class Cat
{
 public int a = 5;
 public int b = a + 1;
 public int c = a * b;
}
class Cat
{
 public int a = 0;
 public int b = 0;
 public int c = 0;

 public Cat()
 {
  super();

  a = 5;
  b = a + 1; //5+1 = 6
  c = a * b; //5*6 = 30
 }
}
class Cat
{
 public int a = getSum();
 public int b = getSum() - a;
 public int c = getSum() - a - b;

 public getSum()
 {
  return a + b + c;
 }
}
class Cat
{
 public int a = 0;
 public int b = 0;
 public int c = 0;

 public Cat()
 {
  super();

  a = getSum(); //(a+b+c)=0
  b = getSum() - a; //(a+b+c)-a=b=0
  c = getSum() - a - b; //(a+b+c)-a-b=c=0
 }

 public getSum()
 {
  return a + b + c;
 }
}

"Holy moly! Napakasimple lang. Salamat, Bilaabo. Isa kang tunay na kaibigan!"

"Hooray! May kaibigan si Bilaabo!"