24. Non-Access Modifier trong lập trình java hướng đối tượng

Trong lập trình java hướng đối tượng, non-access modifiers (kiểu modifier không phải truy cập) được sử dụng để thay đổi tính chất và hành vi của các thành phần như lớp, phương thức, biến, hoặc interface. Dưới đây là các non-access modifiers phổ biến trong Java:

  1. final: Modifier “final” được sử dụng để chỉ định rằng một thành phần không thể thay đổi sau khi đã được khởi tạo.
    • Với lớp: Không thể kế thừa từ lớp final.
    • Với phương thức: Không thể ghi đè (override) phương thức final trong các lớp con.
    • Với biến: Khai báo một biến final sẽ tạo ra một hằng số không thể thay đổi giá trị.
  2. abstract: Modifier “abstract” được sử dụng để chỉ định rằng một lớp hoặc phương thức là trừu tượng và không thể được khởi tạo hoặc triển khai trực tiếp.
    • Với lớp: Lớp abstract không thể được khởi tạo, mà chỉ được kế thừa và mở rộng bởi các lớp con.
    • Với phương thức: Phương thức abstract không có phần thân và phải được triển khai bởi các lớp con.
  3. static: Modifier “static” được sử dụng để chỉ định rằng một thành phần thuộc về lớp chứ không thuộc về các thể hiện của lớp đó.
    • Với biến: Biến static chia sẻ chung giữa tất cả các thể hiện của lớp và có thể truy cập thông qua tên lớp.
    • Với phương thức: Phương thức static thuộc về lớp chứ không phải thể hiện của lớp và có thể được gọi trực tiếp thông qua tên lớp.
  4. synchronized: Modifier “synchronized” được sử dụng trong ngữ cảnh đa luồng để đồng bộ hóa truy cập vào một phương thức hoặc khối mã.
    • Với phương thức: Phương thức synchronized chỉ có thể được gọi bởi một luồng tại một thời điểm và đảm bảo an toàn đồng thời (thread-safe).
  5. transient: Modifier “transient” được sử dụng để chỉ định rằng một biến không tham gia quá trình serialization khi lưu trữ đối tượng.
    • Với biến: Biến transient không được lưu trữ khi đối tượng được chuyển đổi thành dạng byte để lưu trữ hoặc truyền đi.
  6. volatile: Modifier “volatile” được sử dụng trong ngữ cảnh đa luồng để chỉ định rằng một biến có thể được truy cập và sửa đổi bởi nhiều luồng.
    • Với biến: Biến volatile đảm bảo rằng mọi luồng đọc và ghi biến đều nhìn thấy giá trị mới nhất và tránh lỗi đọc/ghi không đồng bộ.

Các non-access modifiers được sử dụng để mô tả các tính chất bổ sung và kiểm soát hành vi của các thành phần trong lập trình Java hướng đối tượng.

Leave a Comment

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

Scroll to Top