Java cung cấp một số modifier khác để cung cấp chức năng ngoài visibility. Các modifier này gọi là Non-Access Modifiers (modifier không phải truy cập).
- Static Các thành viên khai báo static dùng chung cho tất cả instance của lớp. Static members là thành viên cấp lớp, lưu trong bộ nhớ lớp.
- Final Modifier này hạn chế sửa đổi tiếp biến, phương thức hoặc lớp. Giá trị biến final không thể thay đổi sau khi gán. Phương thức final không thể override trong subclass và không thể tạo subclass cho final class.
- Abstract Modifier này dùng với lớp hoặc phương thức. Không áp dụng cho biến và constructor. Phương thức abstract phải được triển khai trong subclass. Không thể khởi tạo lớp abstract.
- Synchronized Modifier này kiểm soát truy cập phương thức hoặc khối bởi nhiều luồng. Chỉ một luồng vào được phương thức/khối synchronized.
- Transient Modifier dùng trong quá trình serialization. Biến transient sẽ không được serialize khi serialize đối tượng.
- Volatile Modifier dùng trong lập trình đa luồng. Khai báo field volatile báo cho luồng biết giá trị phải đọc từ main memory thay vì stack riêng. Vì volatile field dùng chung cho tất cả luồng và cập nhật thường xuyên.
- Strictfp Modifier dùng cho tính toán dấu phẩy động. Từ khóa này đảm bảo cùng biểu diễn dấu phẩy động trên mọi platform. Làm biến dấu phẩy động nhất quán hơn cross-platform.