Posted in

Ngày 1: Kiểm soát truy cập OOP (Access Control).

Ngày 1: Kiểm soát truy cập OOP (Access Control).
Trong lập trình hướng đối tượng Java, có bốn loại kiểm soát truy cập: private, protected, public và mặc định (package-level). Cụ thể:
– Private: chỉ có thể truy cập trong cùng một lớp.
– Protected: có thể truy cập trong cùng một lớp, cùng một package và các subclass.
– Public: có thể truy cập ở mọi nơi.
– Mặc định (không có từ khóa): có thể truy cập trong cùng một lớp và cùng một package.

Ví dụ:

“`java
public class Animal {
private String name; // chỉ có thể được truy cập trong lớp Animal

protected int age; // có thể truy cập trong cùng package và subclass.

public void setName(String name) {
this.name = name; // truy cập field private qua phương thức của lớp
}
}
“`

Các trường hợp đặc biệt: Một số người lập trình có thói quen đặt tất cả các field là private và chỉ truy cập chúng thông qua getter và setter, điều này có thể tạo ra sự linh hoạt hơn nếu muốn thay đổi việc cách thức truy cập field sau này.

Câu hỏi ôn tập:
1. Từ khóa nào dùng để mô tả kiểm soát truy cập có thể các lớp khác nhau, nhưng cùng một package có thể truy cập?
– Câu trả lời: Không có từ khóa nào trực tiếp mô tả điều này. Nếu không có từ khóa nào để kiểm soát truy cập (public, private, protected), thì mặc định nó chỉ có thể được truy cập trong cùng một package.
2. Mục đích của việc sử dụng kiểm soát truy cập là gì?
– Câu trả lời: Kiểm soát truy cập được sử dụng để hạn chế truy cập vào mã nguồn nhất định (fields và methods) trong class. Cung cấp quyền truy cập hợp lý cho các class khác giúp bảo mật mã nguồn và tránh nhầm lẫn.
3. Có thể đặt contructor là private không?
– Câu trả lời: Có, đặt constructor là private thường được sử dụng để ngăn việc tạo các đối tượng mới của class. Thông thường thì thường dùng trong Singleton Pattern.
4. Khi nào nên dùng protected và khi nào nên dùng package-level?
– Câu trả lời: Protected nên dùng khi bạn muốn các subclass ngoài package cũng có thể truy cập. Còn khi bạn muốn chỉ các class trong cùng package mới được truy cập, hãy dùng package-level.
5. Ăn gì để tăng cường trí nhớ?
– Câu trả lời: Ăn cá, hạt chia, bơ, dâu, quả óc chó và rau xanh.

Leave a Reply

Your email address will not be published. Required fields are marked *