Visibility – truy cập đến thuộc tính trong class

Thuộc tính private

Thuộc tính private chỉ có thể được truy cập trong class chứa nó. Tức là các class khác không thể truy xuất đến các thuộc tính private. Các thuộc tính này thường được truy xuất đến thông qua các phương thức getter và setter.

Ví dụ, ta tạo 1 class như sau:

Giờ ta sẽ thử truy xuất đến thuộc tính private int variable:

Thuộc tính public

Thuộc tính public có thể truy xuất thoải mái từ các class khác.

Ví dụ ta khai báo 1 class:

Ta thử truy xuất đến thuộc tính public int variable:

Thuộc tính protect

Thuộc tính protect có thể được truy xuất từ trong class chứa nó, trong package chứa class chứa nó và các class kế thừa class chứa nó. Ví dụ:

Ta tạo 1 class:

Trong cùng package chứa ParentClass ta tạo 1 class Test để thử truy xuất đến thuộc tính value:

Ta tạo 1 package khác (giả sử new_package), trong package này sẽ tạo 1 class ChildClass như sau:

Như vậy là 2 class khác package sẽ không truy cập được các thuộc tính protected của nhau.

Giờ ta sẽ cho ChildClass kế thừa ParentClass:

Lúc này ChildClass sẽ truy xuất được thuộc tính protected value của ParentClass.

Package Visibility

Nếu không chỉ ra modifier, thuộc tính sẽ được truy xuất bởi các class cùng package class chứa nó.

Ta tạo 1 class:

Tạo tiếp 1 class cùng packge với class trên:

Bạn hãy thử tạo 1 class ngoài package chứa TestVariable, bạn sẽ thấy nó không thể truy xuất đến thuộc tính variable của class TestVariable.

Hãy chia sẻ

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *