Kata kunci terakhir dapat mengubah variabel lokal di kelas, variabel anggota, dan metode. Anda dapat menggunakan kata kunci final untuk mendeklarasikan suatu kelas sebagai kelas final. Kelas final tidak dapat diwarisi, yaitu tidak dapat memiliki subkelas.
Misalnya:
kelas akhirA{…}
A adalah kelas final dan tidak ada kelas yang boleh dideklarasikan sebagai subkelas dari A. Umumnya, beberapa kelas dimodifikasi sebagai kelas final untuk alasan keamanan. Misalnya: Kelas String yang disediakan oleh Java dalam paket java.lang memainkan peran yang sangat penting dalam operasi normal compiler dan interpreter. Java tidak mengizinkan program pengguna untuk memperluas kelas String, sehingga Java memodifikasinya sebagai kelas final .
Jika suatu metode pada kelas induk diubah dengan final, maka metode tersebut tidak boleh ditimpa oleh subkelas, yaitu subkelas tidak boleh menyembunyikan metode akhir yang dapat diwarisi.
Jika suatu variabel anggota atau variabel lokal diubah menjadi final, maka itu adalah suatu konstanta. Karena konstanta tidak diperbolehkan berubah selama runtime, konstanta tidak memiliki nilai default saat dideklarasikan, sehingga program harus menentukan nilai konstanta saat mendeklarasikannya.