Modifier
Duy Văn | 10/03/2025
Modifier có hai loại:
- Access modifier: kiểm soát khả năng truy cập
- Non-Access modifier: không kiểm soát truy cập nhưng cung cấp các tính năng khác
Access modifier
Access modifier dành cho class sẽ bao gồm:
public- class nào dược define với modifier public có thể được import sang một class khácdefault- class nào không có modifier nào sẽ được gọi là default, chỉ có thể truy cập từ trong cùng package, không thể truy cập từ package khác , mình sẽ nói ở bài Package
Access modifier dành cho thuộc tính, methods và constructor có thể có:
- public: có thể truy cập từ bất kỳ class nào
- private: chỉ có thể truy cập từ bên trong class đó
- default: chỉ có thể truy cập từ trong cùng package
- protected: chỉ có thể truy cập từ trong cùng package và các class con
Non-Access modifier
Cho class thì Non-Access modifier có thể có:
- final : class không thể được kế thừa bởi class khác, xem thêm ở bài Inheritance
- abstract: class không thể tạo ra object - đây là một abstract class, xem thêm ở bài Abstraction
Cho thuộc tính và method thì có:
- final: giá trị của thuộc tính không thể thay đổi, method không thể bị override
- static: thuộc tính và method thuộc về class chứ không phải object
- abstract: abstract method dùng trong abstract class, xem thêm ở bài Abstraction
- synchronized: method chỉ có thể được thực thi bởi một thread tại một thời điểm
- transient: thuộc tính không được serialize khi lưu trữ
- volatile: giúp thread đọc và ghi giá trị của biến này từ bộ nhớ chính chứ không đi theo thread