Rumah Java javaTutorial Apakah kegunaan kata kunci akhir dalam java

Apakah kegunaan kata kunci akhir dalam java

May 01, 2024 pm 06:24 PM

Kata kunci terakhir dalam Java mempunyai tiga kegunaan berikut: Isytihar pemalar dan pastikan ia tidak boleh diubah suai. Tingkatkan keselamatan kod dengan menghiasi kelas, kaedah dan pembolehubah supaya ia tidak boleh diwarisi, ditindih atau ditugaskan semula. Menggunakan muktamad apabila mengisytiharkan pembolehubah tempatan dalam kaedah atau pembina menghalang pengecualian penuding nol kerana ia memulakan pembolehubah atau memberikannya nilai lalai pada masa penyusunan.

Apakah kegunaan kata kunci akhir dalam java

Penggunaan kata kunci akhir dalam Java

Kata kunci akhir dalam Java ialah pengubah suai berkuasa yang digunakan secara meluas untuk memastikan keselamatan dan ketepatan kod. Ia mempunyai tiga kegunaan utama: final 关键字是一个强大的修饰符,广泛应用于确保代码安全性和正确性。它有三种主要的用法:

1. 声明常量

final 用于声明不能被重新赋值或修改的常量。常量通常用大写字符表示,例如:

final int MAX_VALUE = 100;
Salin selepas log masuk

2. 修饰类、方法和变量

final 可以修饰类、方法和变量,这意味着它们不能被继承、覆盖或重新分配。

  • final 类:不可被继承,防止子类修改或扩展其行为。
  • final 方法:不可被重写,保证方法的行为始终如一。
  • final 变量:不可重新分配,一旦初始化,其值将保持不变。

3. 阻止空指针异常

在方法或构造函数中声明局部变量时使用 final 关键字,可以防止空指针异常。final 变量会在编译时被初始化,如果未显式初始化,则会被自动赋予默认值。

例如,以下代码可能会出现空指针异常:

public void greet(String name) {
    if (name == null) {
        System.out.println("Hello, null!");
    } else {
        System.out.println("Hello, " + name + "!");
    }
}
Salin selepas log masuk

而使用 final 关键字可以避免这种情况:

public void greet(final String name) {
    if (name == null) {
        System.out.println("Hello, null!");
    } else {
        System.out.println("Hello, " + name + "!");
    }
}
Salin selepas log masuk

在这种情况下,编译器会在编译时检测到 name

🎜1. Isytihar pemalar 🎜🎜🎜akhir digunakan untuk mengisytiharkan pemalar yang tidak boleh ditetapkan semula atau diubah suai. Pemalar biasanya diwakili oleh aksara besar, contohnya: 🎜rrreee🎜🎜2 Ubah suai kelas, kaedah dan pembolehubah 🎜🎜🎜akhir boleh mengubah suai kelas, kaedah dan pembolehubah, yang bermaksud ia tidak boleh diwarisi, ditindih. atau agihkan semula. 🎜
  • 🎜kelas akhir: 🎜tidak boleh diwarisi, menghalang subkelas daripada mengubah suai atau melanjutkan tingkah lakunya.
  • 🎜kaedah akhir: 🎜tidak boleh ditindih, memastikan tingkah laku kaedah adalah konsisten.
  • 🎜pembolehubah akhir: 🎜tidak boleh ditetapkan semula, setelah dimulakan, nilainya akan kekal tidak berubah.
🎜🎜3. Cegah Pengecualian Penunjuk Null🎜🎜🎜Gunakan kata kunci akhir semasa mengisytiharkan pembolehubah setempat dalam kaedah atau pembina untuk menghalang Pengecualian Penunjuk Null. Pembolehubah final akan dimulakan pada masa penyusunan Jika tidak dimulakan secara eksplisit, ia akan diberikan nilai lalai secara automatik. 🎜🎜Sebagai contoh, kod berikut mungkin membuang pengecualian penuding nol: 🎜rrreee🎜 Ini boleh dielakkan dengan menggunakan kata kunci final: 🎜rrreee🎜Dalam kes ini, pengkompil akan mengesannya pada masa penyusunan Pembolehubah kepada name tidak dimulakan dan amaran atau ralat dikeluarkan. 🎜

Atas ialah kandungan terperinci Apakah kegunaan kata kunci akhir dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana dengan elegan mendapatkan nama pemboleh ubah kelas entiti untuk membina keadaan pertanyaan pangkalan data? Bagaimana dengan elegan mendapatkan nama pemboleh ubah kelas entiti untuk membina keadaan pertanyaan pangkalan data? Apr 19, 2025 pm 11:42 PM

Apabila menggunakan Mybatis-Plus atau Rangka Kerja ORM yang lain untuk operasi pangkalan data, sering diperlukan untuk membina syarat pertanyaan berdasarkan nama atribut kelas entiti. Sekiranya anda secara manual setiap kali ...

Bagaimana untuk memudahkan isu pemetaan medan dalam dok sistem menggunakan mapstruct? Bagaimana untuk memudahkan isu pemetaan medan dalam dok sistem menggunakan mapstruct? Apr 19, 2025 pm 06:21 PM

Pemprosesan pemetaan medan dalam dok sistem sering menemui masalah yang sukar ketika melaksanakan sistem dok: bagaimana untuk memetakan medan antara muka sistem dengan berkesan ...

Apakah perbezaan antara kebocoran memori dalam program Java pada CPU ARM dan X86 Architecture? Apakah perbezaan antara kebocoran memori dalam program Java pada CPU ARM dan X86 Architecture? Apr 19, 2025 pm 11:18 PM

Analisis fenomena kebocoran memori program Java pada CPU seni bina yang berbeza. Artikel ini akan membincangkan kes di mana program Java mempamerkan tingkah laku memori yang berbeza di lengan dan cpus seni bina x86 ...

Bagaimanakah Idea IntelliJ mengenal pasti nombor port projek boot musim bunga tanpa mengeluarkan log? Bagaimanakah Idea IntelliJ mengenal pasti nombor port projek boot musim bunga tanpa mengeluarkan log? Apr 19, 2025 pm 11:45 PM

Mula musim bunga menggunakan versi IntelliJideaultimate ...

Adakah perisian keselamatan syarikat menyebabkan aplikasi gagal dijalankan? Bagaimana cara menyelesaikan masalah dan menyelesaikannya? Adakah perisian keselamatan syarikat menyebabkan aplikasi gagal dijalankan? Bagaimana cara menyelesaikan masalah dan menyelesaikannya? Apr 19, 2025 pm 04:51 PM

Penyelesaian masalah dan penyelesaian kepada perisian keselamatan syarikat yang menyebabkan beberapa aplikasi tidak berfungsi dengan baik. Banyak syarikat akan menggunakan perisian keselamatan untuk memastikan keselamatan rangkaian dalaman. …

Dalam debugging jauh Java, bagaimana untuk mendapatkan nilai malar dengan betul pada pelayan jauh? Dalam debugging jauh Java, bagaimana untuk mendapatkan nilai malar dengan betul pada pelayan jauh? Apr 19, 2025 pm 01:54 PM

Soalan dan jawapan mengenai pengambilalihan berterusan dalam debugging jauh Java Apabila menggunakan Java untuk debugging jauh, banyak pemaju mungkin menghadapi beberapa fenomena yang sukar. Ia ...

Bagaimana cara membahagikan logik perniagaan dan logik perniagaan dengan betul dalam seni bina hierarki dalam pembangunan back-end? Bagaimana cara membahagikan logik perniagaan dan logik perniagaan dengan betul dalam seni bina hierarki dalam pembangunan back-end? Apr 19, 2025 pm 07:15 PM

Membincangkan masalah seni bina hierarki dalam pembangunan back-end. Dalam pembangunan back-end, seni bina hierarki biasa termasuk pengawal, perkhidmatan dan dao ...

Dalam pembangunan back-end, bagaimana membezakan tanggungjawab lapisan perkhidmatan dan lapisan DAO? Dalam pembangunan back-end, bagaimana membezakan tanggungjawab lapisan perkhidmatan dan lapisan DAO? Apr 19, 2025 pm 01:51 PM

Membincangkan seni bina hierarki dalam pembangunan back-end. Dalam pembangunan back-end, seni bina hierarki adalah corak reka bentuk yang sama, biasanya termasuk pengawal, perkhidmatan dan tiga lapisan DAO ...

See all articles