Java 中抽象和封裝有什麼區別?
根據字典,抽象是指處理思想而不是事件的品質。例如,當你考慮電子郵件的情況時,複雜細節(如郵件傳送後發生的事情,電子郵件伺服器使用的協議)對使用者是隱藏的。因此,要傳送電子郵件,你只需鍵入內容,提及收件人的地址,然後點擊發送。
抽象的過程是將實現細節對使用者進行隱藏,僅向用戶提供功能。換句話說,使用者將獲得有關物件執行什麼操作的資訊,而不是它是如何執行的。
在 Java 中,抽象是使用抽象類和介面實現的。
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;
}
}
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());
}
}
輸出
Name : James Age : 20
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP