Bổ từ cho trường và phương thức

Một phần của tài liệu Học lập trình Java qua ví dụ (Trang 83 - 87)

Chương 6: Gói và thành phần chỉ định truy nhập

6.4Bổ từ cho trường và phương thức

Bổ từ cho trường và phương thức (field and method modifier)là những từ khóa được dùng để xác định các phương thức và trường cần được khai báo để điều khiển truy nhập của người dùng. Một số sử dụng kèm với từ khóa public và protected. Java cung cấp các từ khóa volatile, transient và native như là các bổ từ cho trường và phương thức (field and method modifiers).

volatile

Bổ trợ volatile cho phép nội dung của biến đồng bộ cho tất cả các tuyến trình đang chạy vì vậy khi giá trị của biến thay đổi, tất cả các tuyến trình sẽ nhìn thấy sự thay đổi đó. Bổ từ volatile chỉ áp dụng cho trường. Những hàm dựng, phương thức, lớp và interface không có áp dụng bổ trợ này. Biến volatile hữu ích trong môi trường đa xử lý và không thường sử dụng trong các môi trường khác.

native

Bổ trợ native chỉ được áp dụng cho các phương thức của lớp và cho biết cài đặt của phương thức nằm bên ngoài lớp. Thường cài đặt cũng nằm ngoài JVM và được tạo ra với ngôn ngữ hay công nghệ không phải Java như C hay C++. Hàm dựng, trường, lớp và interface không có bổ từ này. Những phương thức khai báo sử dụng bổ từ native được gọi là phương thức native . Tập tin mã nguồn Java thường chỉ chứa khai báo và không có phần cài đặt của phương thức native. Những phương thức native vi phạm vào tính chất độc lập nền tảng (platform) của Java và do đó không nên sử dụng trừ khi thực sự cần thiết. Đối tượng gọi phương thức native thậm chí không cần biết phương thức được khai báo trong lớp, bởi vì chúng kích hoạt phương thức bình thường giống như lời gọi các phương khác. Một vài lớp trong Java API có các phương thức native. Lớp Object, ví dụ, trong gói Java.lang, có nhiều phương thức native.

transient

Bổ từ transient được dùng để khai báo các trường sẽ không lưu trữ hoặc khôi phục như một phần trạng thái của đối tượng. Trong nhiều trường hợp, tuần tự hóa (serialization) tương đối tốn kém bộ nhớ ngoài. Trong trường hợp như vậy, từ khóa transient giảm lượng dữ liệu tuần tự, nâng

cao hiệu suất thực hiện, và giảm chi phí. Tuần tự hóa (Serialization) là một quá trình chuyển đổi trạng thái của đối tượng thành một luồng các byte nhị phân (binary stream). Luồng có thể được ghi ra đĩa hoặc lưu trữ trong bộ nhớ.

Bổ từ volatile và transient không thể áp dụng cho các biến cục bộ.

Java không xác định cụ thể vị trí của các chỉ định truy nhập (access specifiers) và bổ từ (modifiers) trong khai báo. Vì thế các khai báo sau là hợp lệ:

native public void testNative(); private volatile int price;

transient private volatile int price;

Tuy nhiên, câu lệnh dưới đây không hợp lệ bởi vì chỉ định truy nhập hay bổ từ cho trường và phương thức phải đặt trước kiểu dữ liệu.

Chương 7 Thừa kế và giao tiếp

85/114

Tóm Tắt Bài Học

 Package (gói) trong Java là một nhóm các lớp (class) có quan hệ với nhau và những cái chung được sắp xếp lại với nhau như một đơn vị.

 Package có thể chia làm 2 loại: package có sẵn hoặc package do người dùng định nghĩa.

 Câu lệnh khai báo package được khai báo vào phần trên cùng của một class và dùng lệnh import để import một hoặc nhiều class(lớp) từ một package khác vào trong chương trình.

 Cách thức truy nhập chỉ định và mô tả trong điều khiển Java cho phép truy nhập của lớp và các thành viên của lớp.

 Bổ từ cho trường và phương thức là những từ khóa dùng để xác định trường và phương thức cần được khai báo cho điều khiển truy nhập của người dùng

AptechVietnam 87/114

Một phần của tài liệu Học lập trình Java qua ví dụ (Trang 83 - 87)