cari
RumahJavajavaTutorialBagaimana pengubah akses fungsi Java berkaitan dengan sistem modul Java 9

Sistem modul Java 9 mengubah maksud pengubah suai akses: pengubah suai awam membenarkan akses modul yang dilindungi membenarkan akses modul pakej yang dieksport mengehadkan akses kepada modul pengubahsuai peribadi hanya membenarkan akses modul yang diisytiharkan;

Java 函数的访问权限修饰符之与 Java 9 模块系统的关系

Cara pengubah akses fungsi Java berkaitan dengan sistem modul Java 9

Java 9 memperkenalkan sistem modul, cara baharu untuk mengatur dan membungkus aplikasi Java. Sistem modul memperkenalkan makna baharu kepada pengubah suai akses sedia ada dalam bahasa Java (awam, dilindungi, lalai dan peribadi).

Pengubah Suai Akses

Pengubah suai akses dalam Java tentukan kelas dan pakej yang boleh mengakses kelas, medan atau kaedah. Empat pengubah akses dijelaskan seperti berikut:

  • awam: Boleh diakses oleh semua kelas dan pakej.
  • dilindungi: Boleh diakses oleh semua kelas dan semua subkelas dalam pakej yang sama.
  • lalai (juga dipanggil pakej-peribadi): Hanya boleh diakses untuk kelas dalam pakej yang sama.
  • peribadi: Hanya boleh diakses kepada kelas di mana kelas, medan atau kaedah diisytiharkan.

Sistem Modul

Sistem modul Java 9 membolehkan anda menyusun kod anda ke dalam modul. Modul ialah koleksi unit kompilasi dengan kebergantungan eksplisit dan pakej yang dieksport. Sistem modul menguatkuasakan enkapsulasi dengan mewujudkan kebergantungan antara modul dan pakej.

Pengubah suai akses dan sistem modul

Dalam sistem modul Java 9, peranan pengubah akses telah berubah:

  • awam: Sesuatu kelas, medan atau kaedah boleh diakses terus dari luar modul.
  • dilindungi: Kelas, medan atau kaedah hanya boleh diakses terus dari dalam modul atau daripada modul yang mengeksport pakej.
  • lalai (pakej-peribadi): Kelas, medan atau kaedah hanya boleh diakses daripada modul yang mengeksport pakej.
  • peribadi: Sesuatu kelas, medan atau kaedah hanya boleh diakses daripada modul pengisytiharan.

Kes Praktikal

Pertimbangkan modul contoh berikut:

module demo.module {
    exports demo.package;
}

package demo.package;

class MyClass {
    public void publicMethod() { }
    protected void protectedMethod() { }
    void defaultMethod() { }
    private void privateMethod() { }
}

Dalam contoh ini, pakej demo.package dieksport supaya modul lain boleh mengakses kelas, medan dan kaedah awamnya. demo.package 包被导出,因此其他模块可以访问其公共类、字段和方法。

  • publicMethod 是公开的,可以从任何模块访问。
  • protectedMethod 是受保护的,只能从 demo.module 或导入了 demo.package 包的模块中访问。
  • defaultMethod 是默认的,只能从导入了 demo.package 包的模块中访问。
  • privateMethod 是私有的,只能从 demo.module
publicMethod adalah awam dan boleh diakses daripada mana-mana modul.

protectedMethod dilindungi dan hanya boleh diakses daripada demo.module atau modul yang mengimport pakej demo.package.

defaultMethod ialah lalai dan hanya boleh diakses daripada modul yang mengimport pakej demo.package.

privateMethod adalah peribadi dan hanya boleh diakses daripada demo.module. 🎜🎜🎜🎜Kesimpulan🎜🎜🎜Dengan memahami hubungan antara sistem modul Java 9 dan pengubah suai akses, anda boleh meningkatkan pengkapsulan aplikasi anda dan mengurus akses kepada kod anda. 🎜

Atas ialah kandungan terperinci Bagaimana pengubah akses fungsi Java berkaitan dengan sistem modul Java 9. 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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa