"Helo kepada pelajar kegemaran saya. Sekarang saya akan memberitahu anda tentang keterlihatan pembolehubah."

"Hah? Bolehkah pembolehubah tidak kelihatan?"

"Tidak. 'Keterlihatan' pembolehubah, atau skop, bermaksud tempat dalam kod yang anda boleh merujuk kepada pembolehubah itu. Anda boleh menggunakan beberapa pembolehubah di mana-mana dalam program, tetapi yang lain hanya boleh digunakan dalam kelas mereka, dan yang lain - hanya dalam satu kaedah. "

"Sebagai contoh, anda tidak boleh menggunakan pembolehubah sebelum ia diisytiharkan."

"Yang masuk akal."

"Berikut ialah beberapa contoh:"


public class Variables

{
   private static String TEXT = "The end.";
  ┗━━━━━━━━━━━━━━┛
   public static void main (String[] args)
                          ┗━━━━━━━┛
  {
     System.out.println("Hi");
     String s = "Hi!";
   ┏┗━━━━┛
    System.out.println(s);
    if (args != NULL)
    {
       String s2 = s;
      ┗━━━━┛
   
      System.out.println(s2);
     
    }
    Variables variables = new Variables();
    System.out.println(variables.instanceVariable);
    System.out.println(TEXT);
   
  }
 
   public String instanceVariable;
  ┗━━━━━━━━━━━━━━━┛
   public Variables()
   {
      instanceVariable = "Instance variable test.";
   }
}

1. Pembolehubah yang diisytiharkan dalam kaedah wujud (boleh dilihat) dari permulaan pengisytiharannya hingga akhir kaedah.

2. Pembolehubah yang diisytiharkan dalam blok kod wujud sehingga akhir blok kod.

3. Parameter kaedah wujud di mana-mana dalam kaedah.

4. Pembolehubah dalam objek wujud sepanjang hayat objek yang mengandunginya. Keterlihatan mereka juga ditakrifkan oleh pengubah akses khas: awam dan peribadi .

5. Pembolehubah statik (kelas) wujud sepanjang masa program dijalankan. Keterlihatan mereka juga ditakrifkan oleh pengubah suai akses.

"Saya suka gambar. Mereka membantu menjelaskan segala-galanya."

"Budak yang baik, Amigo. Saya sentiasa tahu yang awak seorang yang bijak."

"Saya juga akan memberitahu anda tentang ' pengubah suai akses '. Jangan takut. Tiada apa-apa yang rumit tentang mereka. Di sini anda boleh melihat perkataan awam dan peribadi ."

"Saya tak takut. Cuma mata saya berkedut."

"Saya percaya anda. Anda boleh menguruskan cara kaedah dan pembolehubah satu kelas diakses oleh (atau kelihatan kepada) kelas lain. Anda boleh menetapkan hanya satu pengubah akses kepada setiap kaedah atau pembolehubah.

1. pengubahsuai akses awam .

Anda boleh menggunakan pembolehubah, kaedah atau kelas yang ditandakan dengan pengubah suai awam dari mana-mana sahaja dalam program. Ini adalah tahap akses tertinggi - tiada had di sini.

2. pengubahsuai akses peribadi .

Anda boleh menggunakan pembolehubah atau kaedah yang ditandakan dengan pengubah suai persendirian hanya daripada kelas yang diisytiharkan masuk. Untuk semua kelas lain, kaedah atau pembolehubah yang ditandakan tidak akan kelihatan, sama seperti ia tidak wujud. Ini adalah tahap penutupan tertinggi - akses hanya dalam kelasnya sendiri.

3. Tiada pengubahsuai.

Jika pembolehubah atau kaedah tidak ditandakan dengan mana-mana pengubah suai, ia dianggap ditandakan dengan pengubah akses 'lalai'. Pembolehubah dan kaedah sedemikian boleh dilihat oleh semua kelas dalam pakej yang diisytiharkan masuk. Dan kepada mereka sahaja. Tahap akses ini kadangkala dipanggil akses ' pakej-peribadi ', kerana akses kepada pembolehubah dan kaedah dibuka untuk keseluruhan pakej yang mengandungi kelasnya.

Berikut ialah jadual yang meringkaskan perkara yang telah kami bincangkan:"

Pengubah suai Akses daripada…
Kelas sendiri Pakej sendiri Mana-mana kelas
persendirian ya Tidak Tidak
Tiada pengubah suai ( pakej-peribadi ) ya ya Tidak
awam ya ya ya