Từ khoá final trong java với ví dụ cụ thể

Trong bài viết này, chúng ta sẽ cùng tìm hiểu về từ khoá final trong java. Final có thể sử dụng với biến, method và class.

Biến final trong java

Một biến đi với từ khoá final được hiểu là một hằng số trong java. Đồng nghĩa với việc chúng ta không thể thay đổi giá trị của các biến final sau khi nó được khởi tạo.

Biến final có giá trị đầu

Output:

Error:(5, 9) java: cannot assign a value to final variable MAX_VALUE

Note: Các hằng số trong java sẽ được đặt tên bằng các chữ cái in hoa. Giữa các chữ cách nhau bằng ký tự (_).

Biến final không có giá trị đầu

Một biến final khi được khai báo mà không gán giá trị được gọi là biến final không có giá trị đầu. Những biến final không có giá trị đầu phải được khởi tạo giá trị trong constructor. 

Output: 99

Khởi tạo biến final thông qua static block

Ngoài việc khởi tạo biến trong constructor, chúng ta còn có thể khởi tạo chúng trong static block

Output: 12

Final method trong java

Final method sẽ thể override. Nghĩa là các class con có thể sử dụng các method final của class cha thế nhưng chúng không thể override lại method đấy.

Với code của class B như trên chúng ta sẽ gặp lỗi compile, method  display() không thể override. 

Thế nhưng bỏ qua class B, chúng ta có Main.java như sau

Output: method class A

Final class trong java

Chúng ta không thể extend một final class trong java, xem ví dụ dưới đây.

 

Với cách viết như trên chúng ta sẽ gặp lỗi compile rằng không được thừa kế từ class A.

Note

  1. Một constructor không thể khai báo với từ khoá final.
  2. Biến final có thể khởi tạo lúc khai báo biến, constructor và static block.
  3. Tất cả các biến được khai báo bên trong interface được mặc định là final.
  4. Chúng ta không thể thay đổi giá trị của các biến final sau khi nó đã được khởi tạo.
  5. Final method không thể override.
  6. Nếu các tham số đầu vào của method được khai báo với từ khoá final thì nó sẽ không thể thay đổi giá trị trong quá trình thực thi code bên trong method đó.
  7. Biến final được đặt tên bằng chữ cái in hoa, mỗi chữ cách nhau bằng ký tự _.

‹Previous  

Leave a Reply

Your email address will not be published. Required fields are marked *