Đóng gói là một trong bốn khái niệm OOP cơ bản. Ba loại còn lại là thừa kế, đa hình và trừu tượng hóa.
ảnh minh họa : Học lập trình java |
Việc đóng gói trong Java là một cơ chế bao bọc dữ liệu (các biến) và mã tác động lên dữ liệu (các phương thức) với nhau thành một đơn vị độc nhất. Trong đóng gói, các biến của một lớp sẽ được ẩn khỏi các lớp khác, và có thể được truy cập chỉ thông qua các phương thức của lớp hiện tại của chúng. Do đó, nó còn được gọi là ẩn dữ liệu .
Để đạt được đóng gói trong Java
Khai báo các biến của một lớp là riêng tây.
Cung cấp các phương thức setter và getter công cộng để sửa đổi và xem các giá trị biến.
Thí dụ
Sau đây là một ví dụ minh họa cách để đạt được Encapsulation trong Java
/* File name : EncapTest.java */ public class EncapTest private String name; private String idNum; private int age; public int getAge() return age; public String getName() return name; public String getIdNum() return idNum; public void setAge( int newAge) age = newAge; public void setName(String newName) name = newName; public void setIdNum( String newId) idNum = newId;
Các phương thức public setXXX () và getXXX () là các điểm truy cập của các biến cá thể của lớp EncapTest. Thông thường, những phương pháp này được gọi là getters và setters. Do đó, bất kỳ lớp nào muốn truy cập các biến sẽ truy cập chúng chuẩn y các getters và setters này.
Các biến của lớp EncapTest có thể được truy cập bằng cách dùng chương trình sau:
/* File name : RunEncap.java */ public class RunEncap public static void main(String args[]) EncapTest encap = new EncapTest(); encap.setName("James"); encap.setAge(20); encap.setIdNum("12343ms"); System.out.print("Name : " + encap.getName() + " Age : " + encap.getAge());
Điều này sẽ tạo ra kết quả sau
Đầu ra
Name : James Age : 20
ích lợi của đóng gói
Các trường của một lớp có thể được thực hành chỉ đọc hoặc chỉ ghi.
Một lớp có thể có toàn quyền kiểm soát những gì được lưu trữ trong các trường của nó.
0 nhận xét:
Đăng nhận xét