1.akhir
Kelas terakhir yang dimodifikasi menunjukkan bahwa kelas ini tidak dapat diwarisi dan merupakan kelas tingkat atas.
final memodifikasi variabel untuk menunjukkan bahwa variabel tersebut adalah konstanta.
Metode terakhir yang dimodifikasi berarti metode ini tidak dapat ditimpa, tetapi dapat ditimpa pada metode akhir.
Misalnya, ada kelas dasar Person dengan metode public final void eat(). Anda dapat membebani metode dengan nama yang sama di kelas Person, seperti public void eat(String name, int age). Jika terdapat subkelas Student, maka metode non-final dari kelas induk dapat di-override di Student, namun metode final tidak dapat di-override.
Orang
Copy kode kodenya sebagai berikut:
paket uji2;
kelas publik Orang {
nama String pribadi;
usia swasta;
kekosongan akhir publik makan()
{
System.out.println("ini adalah kelas orang");
}
public void makan (Nama string, umur int)
{
}
}
Murid
Copy kode kodenya sebagai berikut:
paket uji2;
kelas publik Siswa memperluas Orang {
@Mengesampingkan
public void makan(Nama string, umur int) {
// TODO Stub metode yang dibuat secara otomatis
super.eat(nama, umur);
}
}
Metode akhir yang umum adalah metode wait() dan notify() di kelas Object.
2. akhirnya
last adalah kata kuncinya. Dalam penanganan pengecualian, klausa try mengeksekusi apa yang perlu dijalankan. Klausa catch digunakan untuk menangkap pengecualian. akhirnya adalah opsional. Tapi usahakan...catch harus tampil berpasangan.
3.menyelesaikan()
nama metode finalize(), metode kelas Objek, teknologi Java memungkinkan penggunaan metode finalize() untuk melakukan pekerjaan pembersihan yang diperlukan sebelum pengumpul sampah membersihkan objek dari memori. Metode ini dipanggil oleh pengumpul sampah pada objek ini ketika menentukan bahwa objek tersebut tidak direferensikan. Metode finalize() adalah dengan mengganti metode finalize() yang dipanggil oleh subkelas objek ini sebelum pengumpul sampah menghapus objek untuk mengatur sumber daya sistem atau melakukan operasi pembersihan lainnya.
Contoh kode:
Copy kode kodenya sebagai berikut:
Orang kelas
{
nama String pribadi;
usia swasta;
Orang publik(String nama, int umur) {
ini.nama = nama;
this.usia = usia;
}
String publik keString()
{
return "Nama: "+ini.nama+", Usia: "+ini.usia;
}
public void finalize() throws Throwable{//Metode ini dipanggil secara default ketika objek melepaskan ruang
System.out.println("Objek dilepaskan-->"+ini);//Output objek sekunder secara langsung dan panggil metode toString()
}
}
kelas publik SystemDemo {
/**
* @param argumen
*/
public static void main(String[] args) {
// TODO Stub metode yang dibuat secara otomatis
Orang per=Orang baru("zhangsan",30);
per=null;//Putuskan sambungan referensi dan ruang rilis
//Metode 1:
System.gc();//Melepaskan ruang secara paksa
//Metode 2:
// Waktu proses dijalankan=Waktu berjalan.getRuntime();
// jalankan.gc();
}
}