Posted in

Ngày 1: Tính đóng gói (Encapsulation) trong Java.

Ngày 1: Tính đóng gói (Encapsulation) trong Java.

Trong lập trình hướng đối tượng, tính đóng gói là việc cung cấp các quyền truy cập an toàn đến các đối tượng (thuộc tính và phương thức) của lớp. Nó có thể được chia thành hai phần:

– Tạo ra thuộc tính và phương thức private của lớp.
– Cung cấp phương thức public get và set để truy cập và cập nhật giá trị của các thuộc tính private.

Ví dụ về Encapsulation:

“`java
public class Student{
// Biến private chỉ có thể truy cập được trong class Student.
private int rollNo;
private String studentName;

// Gán giá trị cho biến rollNo sử dụng phương thức set.
public void setRollNo(int rollNo){
this.rollNo = rollNo;
}

// Trả về giá trị rollNo.
public int getRollNo(){
return rollNo;
}

// Gán giá trị cho biến studentName sử dụng phương thức set.
public void setStudentName(String studentName){
this.studentName = studentName;
}

// Trả về giá trị studentName.
public String getStudentName(){
return studentName;
}
}
“`

Các trường hợp đặc biệt:

– Trong một số trường hợp, chúng ta có thể muốn một số thuộc tính của lớp không thể thay đổi. Khi đó, chỉ cần cung cấp phương thức get và không cung cấp phương thức set.

Ôn phỏng vấn:

1. Tính đóng gói trong Java có ý nghĩa gì?
Trả lời: Tính đóng gói trong Java giúp cung cấp một cách an toàn để bảo vệ trạng thái của đối tượng.

2. Chúng ta có thể đặt truy cập modifier là gì cho các phương thức set và get?
Trả lời: Chúng ta thường đặt truy cập modifier là public cho các phương thức set và get.

3. Làm thế nào để bảo vệ dữ liệu trong Encapsulation?
Trả lời: Chúng ta sẽ đặt các biến/thuộc tính của lớp là private và chỉ truy cập vào chúng thông qua phương thức getter và setter.

4. Tại sao chúng ta cần sử dụng Encapsulation?
Trả lời: Encapsulation giúp giữ dữ liệu an toàn từ việc truy cập và sửa đổi trực tiếp; nó cung cấp một cấu trúc linh hoạt hơn để quản lý các lớp và đối tượng.

5. Làm thế nào để đánh dấu thuộc tính của một lớp là chỉ đọc?
Trả lời: Để đánh dấu thuộc tính của lớp là chỉ đọc, chúng ta chỉ cần cung cấp phương thức get và không cung cấp phương thức set cho nó.

Leave a Reply

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