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
廣告