Variabel lokal

"Salam, muridku sing ditresnani! Iki wektu kanggo luwih serius babagan variabel. Nanging wektu iki kita ora bakal ngrembug struktur internal.

"Kabeh variabel sing diumumake ing metode kasebut diarani variabel lokal . Variabel lokal mung ana ing blok kode sing diumumake. kode sing diumumake."

"Jelas, aku butuh conto."

"Ora masalah.

Kode kasedhiyan variabel
public static void main(String[] args)
{
   int a = 5;
   if (a < 10)
   {
     int b = 10;
     while (true)
     {
       int x = a + b;
       System.out.println(x);
     }
     System.out.println(b);
   }

}


a
a
a
a, b
a, b
a, b
a, b, x
a, b, x
a, b
a, b
a
a

"Ayo maneh aturan kanggo ngakses variabel lokal maneh. Iki minangka blok kode. Apa tandha wiwitan lan pungkasane?"

"Kurung kriting?"

"Bener. Iki bisa dadi badan metode, awak loop, utawa mung blok kode kanggo pernyataan kondisional. Variabel sing diumumake ing blok kode ana nganti pungkasan blok kode kasebut. variabel ana yen diumumake ing awak daur ulang?"

"Iku mung bakal ana ing awak daur ulang."

"Bener. Apa maneh, bakal digawe lan dirusak ing saben pengulangan loop."

"Tegese sampeyan ora bisa ngumumake rong variabel lokal kanthi jeneng sing padha ing siji metode - program ora bakal dikompilasi. Nanging sampeyan bisa nindakake iki yen blok kode ing ngendi variabel kasebut diumumake ora tumpang tindih. "

"Ana alesan kenapa sampeyan dadi favoritku, Amigo. Coba conto liyane kanggo nguatake otak sampeyan.

Kode visibilitas variabel
public static void main(String[] args)
{
   int a = 5;
   if (a < 10)
   {
     int b = 10;
     System.out.println(b);
   }

   if (a < 20)
   {
     int b = 20;
     System.out.println(b);
   }
}


a
a
a
a, b
a, b
a
a
a
a
a, b
a, b
a

"Kita bisa ngumumake variabel lokal kapindho sing jenenge bmung amarga variabel pisanan bora katon ing blok kode ing ngendi bvariabel kapindho diumumake.

Paramèter

"Minangka kita ngomong sadurunge, saben cara bisa duwe variabel sing kita sebut parameter. Apa babagan visibilitas lan umur?"

"Hmm...aku kesel..."

"Kabeh cukup prasaja ing kene. Parameter digawe nalika eksekusi langkah menyang metode (yaiku nalika kode metode kasebut wiwit dieksekusi).

"Ing tembung liyane, padha katon ing kabeh awak saka cara lan mung ana?"

"Ya. Tuladha:

Kode visibilitas variabel
public static void main(String[] args)
{
   int a = 5;
   if (a < 10)
   {
     int b = 10;
     while (true)
     {
       int x = a + b;
       System.out.println(x);
     }
     System.out.println(b);
   }

}

args
args, a
args, a
args, a
args, a, b
args, a, b
args, a, b
args, a, b, x
args, a, b, x
args, a, b
args, a, b
args, a
args, a

"Kaya kita ngandika sadurungé, argsiku mung variabel kang jinis Uploaded saka strings. Lan kaya kabeh paramèter, kasedhiya nang endi wae ing awak saka cara. Sing ngandika, kita biasane nglirwakake ing conto kita.

Variabel ing kelas

"Elinga pelajaran ing Level 1, ing ngendi kita ngomong yen kelas bisa duwe metode lan variabel. Metode kadhangkala disebut metode conto, lan variabel - variabel utawa lapangan.

"Apa variabel (utawa kolom) saka kelas ?

Iku variabel sing diumumake ora ing metode, nanging ing kelas.

"Lan kanggo apa padha ana?"

"Kanggo wiwitan, padha bisa diakses saka sembarang (non-statis) cara saka kelas. Kira-kira ngandika, variabel Kayata variabel sing dituduhake dening kabeh cara saka kelas.

Tuladha:

Kode visibilitas variabel
public class Solution
{
   public int count = 0;
   public int sum = 0;

   public void add(int data)
   {
     sum = sum + data;
     count++;
   }

   public void remove(int data)
   {
     sum = sum - data;
     count--;
   }
}


count
count, sum
count, sum
count, sum
count, sum, data
count, sum, data
count, sum, data
count, sum
count, sum
count, sum
count, sum, data
count, sum, data
count, sum, data
count, sum
count, sum

"Ing conto iki, kita duwe rong cara - add()lan remove(). add()Cara nambah sumlan countvariabel conto, lan remove()cara ngurangi variabel sumlan count. Loro cara bisa digunakake ing variabel conto sing dienggo bareng."

"Aku ngerti kabeh! Variabel lokal ana nalika metode dieksekusi. Variabel conto kelas ana ing obyek kelas sajrone obyek kasebut ana. "

"Inggih rampung, Amigo. Kita wis glethakaken sawetara dhasar, lan sampeyan bakal sinau rinci bab obyek saka kelas ing tingkat sabanjuré.

Variabel statis

"Kaya metode, variabel ing kelas bisa statis utawa non-statis. Metode statis mung bisa ngakses variabel statis.

"Aku durung duwe pangerten sing jelas babagan variabel statis."

"Oh, aku ngerti, nanging aja kuwatir. Saiki, cukup nyaman karo wong-wong mau. Sinau karo wong-wong mau. Ing Level 11, kita bakal nganalisa struktur variabel statis lan metode lan sampeyan bakal ngerti alasan kanggo iki. watesan.

"Kanggo nggawe variabel statis (variabel kelas), sampeyan kudu nulis statictembung kunci ing deklarasi.

"Variabel statis ora kaiket kanggo obyek utawa Kayata saka kelas kang padha ngumumaké. Nanging, padha dadi kagungane kelas dhewe. Pramila padha ana sanajan ora obyek siji saka kelas wis digawe . Sampeyan bisa ngrujuk menyang saka kelas liyane nggunakake konstruksi kaya:

ClassName.variableName

Tuladha:

Kode visibilitas variabel
public class Solution
{
   public void add(int data)
   {
     Storage.sum = Storage.sum + data;
     Storage.count++;
   }

   public void remove(int data)
   {
     Storage.sum = Storage.sum - data;
     Storage.count--;
   }
}

public class Storage
{
   public static int count = 0;
   public static int sum = 0;
}

Storage.count, Storage.sum
Storage.count, Storage.sum
Storage.count, Storage.sum, data
Storage.count, Storage.sum, data
Storage.count, Storage.sum, data
Storage.count, Storage.sum
Storage.count, Storage.sum
Storage.count, Storage.sum
Storage.count, Storage.sum, data
Storage.count, Storage.sum, data
Storage.count, Storage.sum, data
Storage.count, Storage.sum



Storage.count, Storage.sum
Storage.count, Storage.sum
Storage.count, Storage.sum

"Ing conto ndhuwur, kita digawe Storagekelas kapisah, dipindhah countlan sumvariabel menyang, lan ngumumaké statis . Variabel statis umum bisa diakses saka sembarang cara ing program (lan ora mung saka cara)."

"Aku ora ngerti lengkap, nanging iki katon trep kanggo kula."

"Dadi. Lan kadhangkala perlu. Tanpa variabel statis lan metode kita bakal macet."

"Muga-muga, aku alon-alon bisa ngerteni."

"Ya, mesthi sampeyan bakal."