Rumah > Java > javaTutorial > teks badan

Kelas Akhir di Jawa

WBOY
Lepaskan: 2024-08-30 16:01:14
asal
173 orang telah melayarinya

Pengisytiharan kelas dengan perkataan Akhir dikenali sebagai kelas akhir. Kelas Akhir di Jawa tidak boleh diwarisi & tidak boleh dipanjangkan oleh kelas lain. Kelas akhir boleh melanjutkan kelas lain; Ia boleh menjadi subkelas tetapi bukan superclass. Apabila mencipta kelas tidak berubah, kelas akhir adalah jawapan terbaik. Kelas akhir ialah pengisytiharan yang menyatakan ia muktamad, iaitu kelas ini tidak mempunyai subkelas & tidak boleh dilanjutkan lagi. Kelas akhir mengekalkan beberapa kepentingan selain kebolehubah.

Kadangkala, adalah amalan terbaik untuk menggunakan kelas akhir untuk tujuan keselamatan, Memandangkan sesetengah kelas melaksanakan perkara berkaitan keselamatan seperti pengesahan dan kebenaran. Dalam senario sedemikian, rentetan dan kaedah di dalam kelas tidak boleh diubah suai dalam keseluruhan kitaran hayat aplikasi, kemudian menjadikan kelas terakhir adalah amalan yang lebih baik.

IKLAN Kursus Popular dalam kategori ini PEMODELAN & PENILAIAN KEWANGAN - Pengkhususan | 51 Siri Kursus | 30 Ujian Olok-olok

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

Menjadikan kelas, Akhir meningkatkan kecekapan aplikasi.

Sintaks:

final class Student {
private int age = 3;
}
/* // Trying to inherit the Student class
class Info extends Student{
public static void main(String[] args) {
//creating instance of the HeavyVehicle class
System.out.println(“I am unable to inherit the class with the final keyword”);
}
}
Salin selepas log masuk

Kelas yang diberikan di atas dengan kata akhir adalah muktamad. Memanjangkan kelas akhir ini dengan kelas lain akan menghasilkan ralat seperti "ralat: tidak boleh diwarisi daripada Pelajar akhir," seperti yang diberikan dalam tangkapan skrin di bawah.

Kelas Akhir di Jawa

Bagaimanakah Kelas Akhir berfungsi di Jawa?

Apabila mengisytiharkan kelas dengan kata kunci akhir, Ia membolehkan JVM membuat andaian & pengoptimuman. Sebaik sahaja anda menambah kata kunci akhir pada mana-mana kelas di Java, rujukan untuk kelas itu tidak boleh diubah. Pengkompil akan menyemak sama ada sebarang rujukan mengambil semula tempat, menghasilkan ralat.

Apa yang berlaku jika kami mengisytiharkan mana-mana kelas akhir & membuat instantiat mana-mana kelas akhir? Kemudian ia dibuat di kawasan kolam; objek yang dicipta dalam kolam mempunyai ciri kebolehubah khas. Beberapa contoh terbaik kelas java tidak berubah ialah String, Integer, Double, dsb.

Jika anda mengisytiharkan kelas sebagai muktamad, maka ia secara tersirat mengisytiharkan semua kaedah kelas itu sebagai muktamad. Yang terakhir ialah pengubah suai dalam Java; anda boleh menggunakan kata kunci akhir pada pembolehubah, kaedah atau kelas. Setelah pengubah suai ditambahkan pada kelas, semua pembolehubah & kaedah kelas itu akan menjadi tidak berubah secara tersirat. Menjadikan kelas tidak boleh ubah memberikan beberapa faedah, seperti Ia adalah baca sahaja & tidak boleh dikongsi dengan selamat dalam berbilang urutan tanpa sebarang penyegerakan.

Contoh Kelas Akhir di Jawa

Diberikan adalah contoh kelas Akhir berikut dalam Java:

Contoh #1

Kelas HeavyVehicle tidak membenarkan pewarisan dalam program yang diberikan kerana ia diisytiharkan sebagai kelas akhir.

Kod:

//This class will not be extended
final class HeavyVehicle{
void messages(){
System.out.println("Your Vehicle Insurance is going to be expire in the next month");
}
}
// Inheriting HeavyVehicle class is not allowed as it is a final class
/*class Vehicle extends HeavyVehicle{
}
*/
//main class
class Car{
public static void main(String[] args) {
//creating instance of the HeavyVehicle class
HeavyVehicle hvObj = new HeavyVehicle();
hvObj.messages();
}
}
Salin selepas log masuk

Jika kami cuba mewarisi kelas HeavyVehicle, kami akan mendapat ralat berikut, seperti yang diberikan dalam tangkapan skrin di bawah.

Kelas Akhir di Jawa

Sekarang kita akan beralih ke kelas seterusnya, di mana kita mencipta contoh kelas akhir untuk menggunakan kaedahnya. Di bawah ialah output program selepas melangkau proses pewarisan.

Kelas Akhir di Jawa

Contoh #2

Dalam program ini, kelas HeavyVehicle diisytiharkan sebagai kelas akhir, jadi ia tidak boleh dilanjutkan dalam kelas lain, jadi ia secara eksplisit memberikan rujukannya kepada kaedah kelas Vehicle.

Kod: 

//This class will not be extended
final class HeavyVehicle{
public double getDistanceCanCover(int mileage, double fuelStatus) {
return mileage * fuelStatus;
}
}
class Vehicle{
private int mileage;
private double fuelStatus;
Vehicle(int mileage, double fuelStatus){
this.mileage = mileage;
this.fuelStatus = fuelStatus;
}
public void DisplayDistanceCanCover(HeavyVehicle hvObj) {
double distCanCover = hvObj.getDistanceCanCover(this.mileage, this.fuelStatus);
System.out.println("Distance Vehicle can cover in the available fuel: " + distCanCover);
}
}
//main class
class Car {
public static void main(String[] args) {
//creating instance of the HeavyVehicle class
HeavyVehicle hvObj = new HeavyVehicle();
//creating instance of the Vehicle class
Vehicle vehObj = new Vehicle(30, 3.5);
//calling the method of the
vehObj.DisplayDistanceCanCover(hvObj);
}
}
Salin selepas log masuk

Dalam contoh yang diberikan di atas, kita dapat melihat bagaimana kelas akhir boleh digunakan dengan berkesan. Output program yang diberikan di atas diberikan di bawah.

Output

Kelas Akhir di Jawa

Contoh #3

Dalam contoh ini, kelas akhir mewarisi kelas lain, iaitu, Pelajar, tetapi tiada kelas lain boleh melanjutkan kelas Info kerana ia adalah kelas akhir.

Kod:

class Student{
public void showDetails(String name, String email, int age) {
System.out.println("\nStudent Name : "+ name);
System.out.println("\nStudent Email : "+ email);
System.out.println("\nStudent Age : "+ age);
}
}
// Trying to inherit the Student class
final class Info extends Student{
//main method of java to start program execution
public static void main(String[] args) {
//creating instance of this class
Info infoObj  = new Info();
//calling here method of the parent class
infoObj.showDetails("Alex Carry", "[email protected]", 40);
}
}
Salin selepas log masuk

Output:

Kelas Akhir di Jawa

Kesimpulan

Dalam artikel yang diberikan di atas, kami telah membincangkan kepentingan kelas Akhir di Jawa. Saya juga menyemak bahawa orang biasanya merujuk kepada kelas akhir di Jawa sebagai kelas tidak berubah. Saya perhatikan beberapa perkara penting yang berkaitan dengan pengisytiharan kelas akhir. Dalam contoh yang diberikan, kita dapat melihat cara kelas akhir boleh digunakan dengan berkesan dalam kelas lain dengan menghantarnya melalui rujukan.

Atas ialah kandungan terperinci Kelas Akhir di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber: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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!