什麼是封裝java
#在物件導向程式設計方法中,封裝(英文:Encapsulation)是指一種將抽象性函數介面的實作細節部包裝、隱藏起來的方法。
封裝可以被視為一個保護屏障,防止該類別的程式碼和資料被外部類別定義的程式碼隨機存取。
要存取該類別的程式碼和數據,必須透過嚴格的介面控制。
封裝最主要的功能在於我們能修改自己的實作程式碼,而不用修改那些呼叫我們程式碼的程式片段。
適當的封裝可以讓程式碼更容易理解與維護,也加強了程式碼的安全性。 (推薦教學:java教學)
封裝的優點
1. 良好的封裝能夠減少耦合。
2. 類別內部的結構可以自由修改。
3. 可以對成員變數進行更精確的控制。
4. 隱藏訊息,實作細節。
java 封裝,說白了就是將一些公共通用的實作邏輯,裝到一個盒子裡(class),出入口都在這個盒子上。你要用就將這個盒子拿來用,連接出入口,就能用了,不用就可以直接扔,對你的代碼沒什麼影響。
對程式設計師來說,使用封裝的目的:
1.偷懶,辛苦一次,後面都能少敲很多程式碼,增強了程式碼得復用性
2.簡化程式碼,看起來更容易懂
3.隱藏核心實作邏輯程式碼,簡化外部邏輯,並且不讓其他人修改,jar 都這麼幹
4.一對一,一個功能就只為這個功能服務;避免頭髮繩子一塊用,導致最後一團糟
範例:
##
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方法是外部類別存取該類別成員變數的入口。 通常情況下,這些方法被稱為getter和setter方法。 因此,任何要存取類別中私有成員變數的類別都要通過這些getter和setter方法。 透過如下的範例說明EncapTest類別的變數怎麼被存取:
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 : 2
以上是什麼是封裝java的詳細內容。更多資訊請關注PHP中文網其他相關文章!