在面向對象程序設計方法中,封裝(Encapsulation)是指一種將抽象性函式接口的實現細節部分包裝'隱藏起來的方法。數據被保護在內部,隱藏內部實現細節,對外提供接口與外部交互。
使用封裝的步驟
將類的所有屬性使用關鍵字private去修飾,把它們變成私有的,不允許外部類直接訪問生成或者提供公共的setter/getter方法去操作這些被隱藏起來的屬性在類自己的setter/getter方法中加入邏輯控制,以確保數據訪問的有效性和安全性實例
讓我們來看一個java封裝類的例子:
/* 文件名: 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;}}以上實例中public方法是外部類訪問該類成員變量的入口。
通常情況下,這些方法被稱為getter和setter方法。
因此,任何要訪問類中私有成員變量的類都要通過這些getter和setter方法。
通過如下的例子說明EncapTest類的變量怎樣被訪問:
/* F文件名: 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()); }}以上代碼編譯運行結果如下:
Name : James Age : 20
使用封裝的好處
1、良好的封裝能夠減少耦合
2、類內部的結構可以自由修改。
3、可以對成員進行更精確的控制。
4、隱藏信息,實現細節
總結
以上就是本文關於java語言中封裝類代碼示例的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!