Apakah pengubah akses di java

Apakah pengubah akses di java

Pengubah akses adalah jenis pengisytiharan pemboleh ubah khas yang mengawal bagaimana dan di mana kod lain boleh menggunakan kelas, pembolehubah, atau kaedah yang diisytiharkan. Blog ini akan menerangkan apa pengubah akses dan tiga tahap penglihatan yang berbeza untuk kelas, kaedah, dan pembolehubah dengan beberapa contoh praktikal.

Memahami skop kod anda adalah penting untuk menulis program yang boleh dibaca dan dikekalkan. Pengubah akses adalah salah satu cara untuk mencapai matlamat ini. Mereka memberitahu pengguna lain kod anda bagaimana anda mahu mereka berinteraksi dengan kaedah atau pembolehubah tertentu. Jika anda baru dalam pengaturcaraan Java, konsep -konsep ini mungkin kelihatan mengelirukan pada pandangan pertama; Walau bagaimanapun, apabila anda belajar tentang mereka sekali atau dua kali, mereka menjadi lebih jelas. Teruskan membaca untuk mengetahui lebih lanjut mengenai pengubah akses di Java.

Pengubah akses di java

Pengubahsuaian akses adalah kata kunci khas yang membolehkan anda menentukan bagaimana kod lain dapat berinteraksi dengan kaedah atau pembolehubah tertentu dalam kelas. Seperti banyak konsep pengaturcaraan, pengubah akses mudah dalam amalan tetapi kelihatannya mengelirukan pada mulanya. Sebaik sahaja anda memahaminya, mereka dapat membantu menjadikan kod anda lebih mudah dibaca dan boleh dipelihara.

Terdapat empat jenis pengubah akses di Java:

Penjelasan ringkas:

  • Swasta: Ahli swasta boleh diakses dalam skop kelas.
  • Lalai: Ahli tanpa pengubah akses juga dikenali sebagai Pakej-swasta. Yang hanya boleh diakses dalam kelas dalam pakej yang sama.
  • Dilindungi: Ahli yang dilindungi boleh diakses dalam semua kelas dalam pakej yang sama dan subkelas pakej lain.
  • Awam: Ahli awam boleh diakses di mana sahaja.

Sila lihat di bawah imej infographic untuk lebih memahami tahap akses pengubah yang berbeza di Java.

Pengubah akses dan skop mereka di Java

Dalam perwakilan di atas, bidang dengan "Ya" adalah skop pengubah yang dibenarkan. The "Tidak" bidang tidak membenarkan akses kepada ahli.

Pengubah akses peribadi

Ahli akses swasta boleh diakses di dalam kelas yang diisytiharkan. Kesalahan masa kompilasi akan berlaku apabila kelas lain cuba mengaksesnya.

Mari kita faham dengan contoh: mencipta kelas bernama "One", dan mengisytiharkan pemboleh ubah peribadi "I" dengan nilai lalai. Sekarang buat kaedah showData () dengan akses lalai dalam kelas yang sama yang mencetak nilai pembolehubah.

Sekarang buat kelas lain "Tecadmin" dengan kaedah utama (). Buat objek kelas satu dan cuba mencetak pembolehubah "i". Oleh kerana pemboleh ubah "i" diisytiharkan secara peribadi, pengkompil Java akan melalui kesilapan. Komen baris di atas dan kemudian hubungi kaedah showdata. Ini akan mencetak nilai "i" dengan jayanya kerana kaedah juga diisytiharkan dalam kelas yang sama.

kelas satu private int i = 10; void showdata () System.keluar.println (i); kelas tecadmin public static void main (string args []) one obj = new one (); Sistem.keluar.println (obj.i); // ralat kompilasi // komen di atas baris untuk menguji kod baris seterusnya obj.showdata (); // berjaya dijalankan
12345678910111213141516kelas satu private int i = 10; void showdata () System.keluar.println (i); kelas tecadmin public static void main (string args []) one obj = new one (); Sistem.keluar.println (obj.i); // ralat kompilasi // komen di atas baris untuk menguji kod baris seterusnya obj.showdata (); // berjaya dijalankan

Kesimpulan

Perbezaan utama antara setiap tahap penglihatan ialah siapa yang boleh mengaksesnya: - orang awam - semua orang - hanya kelas yang mengandungi pembolehubah/kaedah - dilindungi - kelas yang mengandungi pembolehubah/kaedah dan mana -mana kelas yang diperoleh dari itu penglihatan kelas, kaedah, atau pembolehubah menentukan jika dan bagaimana kaedah atau kelas lain dapat berinteraksi dengannya. Ini dipanggil enkapsulasi, dan ia adalah salah satu batu asas pengaturcaraan berorientasikan objek. Dan sekarang anda tahu apa pengubah akses dan bagaimana ia berfungsi, anda boleh menggunakannya dalam kod anda sendiri untuk menjadikannya lebih mudah dibaca dan dikekalkan.