Rumah >Java >javaTutorial >Mengapa Kelas Luar Boleh Mengakses Ahli Persendirian Kelas Dalaman mereka di Jawa?

Mengapa Kelas Luar Boleh Mengakses Ahli Persendirian Kelas Dalaman mereka di Jawa?

Barbara Streisand
Barbara Streisandasal
2024-12-18 03:28:11114semak imbas

Why Can Outer Classes Access Private Members of Their Inner Classes in Java?

Mengakses Ahli Persendirian Kelas Dalaman

Di Java, selalunya diperhatikan bahawa kelas luar boleh mengakses pembolehubah contoh peribadi kelas dalaman mereka . Tingkah laku ini mungkin kelihatan mengejutkan kerana ahli persendirian biasanya tidak boleh diakses dari luar kelas yang menentukan.

Pertimbangkan coretan kod berikut:

class OuterClass {
    class InnerClass {
        private int x = 10;
    }

    public static void main(String[] args) {
        OuterClass.InnerClass inner = new OuterClass().new InnerClass();
        System.out.println("Value of x: " + inner.x); // Why is this allowed?
    }
}

Dalam kod ini, OuterClass boleh mengakses ahli persendirian x daripada InnerClass walaupun ia diisytiharkan sebagai peribadi. Ini kerana kelas dalam mempunyai hubungan istimewa dengan kelas luar mereka.

Kelas dalam dikaitkan rapat dengan kelas luar mereka dan dianggap sebagai ahli kelas luar. Ini bermakna mereka boleh mengakses ahli persendirian kelas luar mereka, termasuk medan, kaedah dan pembina.

Keupayaan kelas luar mengakses ahli persendirian kelas dalam menawarkan beberapa kelebihan:

  • Ia membolehkan gandingan yang ketat antara kelas dan membolehkan perkongsian data dan kefungsian.
  • Ia memudahkan organisasi kod dengan mengekalkan fungsi yang berkaitan dalam definisi kelas tunggal.
  • Ia menyediakan enkapsulasi dan menghalang akses tidak sengaja ahli persendirian dari luar kelas.

Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa kelas dalaman tidak boleh akses terus ahli persendirian dari kelas lain, walaupun kelas tersebut adalah adik beradik atau dalam pakej yang sama. Akses peribadi terhad kepada kelas yang menentukan dan kelas dalamannya.

Atas ialah kandungan terperinci Mengapa Kelas Luar Boleh Mengakses Ahli Persendirian Kelas Dalaman mereka di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn