"Xin chào học sinh yêu thích của tôi. Bây giờ tôi sẽ nói với các bạn về khả năng hiển thị của các biến."

"Hả? Biến vô hình sao?"

"Không. 'Khả năng hiển thị' hoặc phạm vi của một biến có nghĩa là các vị trí trong mã mà bạn có thể tham chiếu đến biến đó. Bạn có thể sử dụng một số biến ở mọi nơi trong chương trình, nhưng những biến khác chỉ có thể được sử dụng trong lớp của chúng và những biến khác nữa – chỉ trong vòng một phương pháp. "

"Ví dụ, bạn không thể sử dụng một biến trước khi nó được khai báo."

"Điều đó có ý nghĩa."

"Đây là một vài ví dụ:"


public class Variables

{
   private static String TEXT = "The end.";
  ┗━━━━━━━━━━━━━━┛
   public static void main (String[] args)
                          ┗━━━━━━━┛
  {
     System.out.println("Hi");
     String s = "Hi!";
   ┏┗━━━━┛
    System.out.println(s);
    if (args != NULL)
    {
       String s2 = s;
      ┗━━━━┛
   
      System.out.println(s2);
     
    }
    Variables variables = new Variables();
    System.out.println(variables.instanceVariable);
    System.out.println(TEXT);
   
  }
 
   public String instanceVariable;
  ┗━━━━━━━━━━━━━━━┛
   public Variables()
   {
      instanceVariable = "Instance variable test.";
   }
}

1. Một biến được khai báo trong một phương thức tồn tại (hiển thị) từ khi bắt đầu khai báo cho đến khi kết thúc phương thức.

2. Một biến được khai báo trong khối mã tồn tại đến hết khối mã.

3. Các tham số của phương thức tồn tại ở mọi nơi trong phương thức.

4. Các biến trong một đối tượng tồn tại trong toàn bộ vòng đời của đối tượng chứa chúng. Khả năng hiển thị của chúng cũng được xác định bởi các công cụ sửa đổi truy cập đặc biệt: công khairiêng tư .

5. Các biến (lớp) tĩnh tồn tại trong suốt thời gian chương trình đang chạy. Khả năng hiển thị của chúng cũng được xác định bởi các công cụ sửa đổi truy cập.

"Tôi yêu những bức tranh. Chúng giúp mọi thứ trở nên rõ ràng."

"Cậu bé ngoan, Amigo. Tôi luôn biết rằng cậu là một người thông minh."

"Tôi cũng sẽ nói với bạn về ' công cụ sửa đổi quyền truy cập '. Đừng sợ. Không có gì phức tạp về chúng. Ở đây bạn có thể thấy các từ công khairiêng tư ."

"Tôi không sợ. Chỉ là mắt tôi giật giật thôi."

"Tôi tin bạn. Bạn có thể quản lý cách các phương thức và biến của một lớp được truy cập bởi (hoặc hiển thị đối với) các lớp khác. Bạn chỉ có thể gán một công cụ sửa đổi truy cập cho mỗi phương thức hoặc biến.

1. công cụ sửa đổi truy cập công khai .

Bạn có thể sử dụng một biến, phương thức hoặc lớp được đánh dấu bằng công cụ sửa đổi công khai từ bất kỳ đâu trong chương trình. Đây là mức truy cập cao nhất – không có giới hạn nào ở đây.

2. công cụ sửa đổi truy cập riêng tư .

Bạn chỉ có thể sử dụng một biến hoặc một phương thức được đánh dấu bằng công cụ sửa đổi riêng từ lớp mà nó được khai báo. Đối với tất cả các lớp khác, phương thức hoặc biến được đánh dấu sẽ ẩn đi, giống như thể nó không tồn tại. Đây là mức đóng cao nhất – chỉ truy cập trong lớp của chính nó.

3. Không bổ ngữ.

Nếu một biến hoặc một phương thức không được đánh dấu bằng bất kỳ công cụ sửa đổi nào, thì nó được coi là được đánh dấu bằng công cụ sửa đổi truy cập 'mặc định'. Các biến và phương thức như vậy hiển thị đối với tất cả các lớp trong gói mà chúng được khai báo. Và chỉ đối với chúng. Mức truy cập này đôi khi được gọi là truy cập ' gói-riêng tư ', vì quyền truy cập vào các biến và phương thức được mở cho toàn bộ gói chứa lớp của chúng.

Đây là bảng tóm tắt những gì chúng ta đã thảo luận:"

sửa đổi Truy cập từ…
Lớp học riêng gói riêng Bất kỳ lớp nào
riêng tư Đúng KHÔNG KHÔNG
Không có công cụ sửa đổi ( gói-riêng tư ) Đúng Đúng KHÔNG
công cộng Đúng Đúng Đúng