14. Từ khóa final trong lập trình java hướng đối tượng

Trong lập trình Java hướng đối tượng, từ khóa “final” được sử dụng để chỉ định rằng một thành phần (lớp, phương thức hoặc trường) không thể thay đổi sau khi đã được khởi tạo hoặc định nghĩa. Các cách sử dụng chính của từ khóa “final” là:

  1. Final class (Lớp final): Khi một lớp được khai báo là final, nghĩa là lớp đó không thể được kế thừa bởi các lớp con. Một lớp final thường được sử dụng khi chúng ta muốn ngăn chặn việc mở rộng và thay đổi cấu trúc của lớp đó.
java
final class MyClass {
    // ...
}
  1. Final method (Phương thức final): Khi một phương thức được khai báo là final, nghĩa là phương thức đó không thể bị ghi đè (overridden) trong các lớp con. Một phương thức final thường được sử dụng khi chúng ta muốn đảm bảo rằng hành vi của phương thức không thay đổi trong lớp con.
java
class MyClass {
    final void myMethod() {
        // ...
    }
}
  1. Final field (Trường final): Khi một trường được khai báo là final, nghĩa là giá trị của trường đó không thể thay đổi sau khi được khởi tạo. Một trường final thường được sử dụng để khai báo các hằng số hoặc các giá trị không thể thay đổi.
java
class MyClass {
    final int myField = 10;
}

Lưu ý rằng các trường final phải được khởi tạo giá trị ban đầu ngay khi khai báo hoặc trong constructor, và sau đó không thể thay đổi giá trị của chúng.

Từ khóa “final” có một số ưu điểm, bao gồm:

  • Bảo vệ tính nguyên vẹn và ổn định của thành phần đã được đánh dấu là final.
  • Giúp ngăn chặn việc thay đổi không cần thiết và bảo vệ các hằng số hoặc giá trị quan trọng.
  • Cải thiện hiệu suất và tối ưu hóa mã trong một số trường hợp.

Tuy nhiên, khi sử dụng từ khóa “final”, cần lưu ý rằng:

  • Lớp final không thể được kế thừa.
  • Phương thức final không thể bị ghi đè.
  • Trường final không thể thay đổi giá trị sau khi được khởi tạo.

Leave a Comment

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

Scroll to Top