java語言中封裝類代碼示例
在面向?qū)ο蟪绦蛟O(shè)計方法中,封裝(Encapsulation)是指一種將抽象性函式接口的實現(xiàn)細節(jié)部分包裝‘隱藏起來的方法。數(shù)據(jù)被保護在內(nèi)部,隱藏內(nèi)部實現(xiàn)細節(jié),對外提供接口與外部交互。
使用封裝的步驟
將類的所有屬性使用關(guān)鍵字private去修飾,把它們變成私有的,不允許外部類直接訪問
生成或者提供公共的setter/getter方法去操作這些被隱藏起來的屬性
在類自己的 setter/getter方法中加入邏輯控制,以確保數(shù)據(jù)訪問的有效性和安全性實例
讓我們來看一個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()); } }
以上代碼編譯運行結(jié)果如下:
Name : James Age : 20
使用封裝的好處
1、良好的封裝能夠減少耦合
2、類內(nèi)部的結(jié)構(gòu)可以自由修改。
3、可以對成員進行更精確的控制。
4、隱藏信息,實現(xiàn)細節(jié)
總結(jié)
以上就是本文關(guān)于java語言中封裝類代碼示例的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
相關(guān)文章
Elasticsearch寫入瓶頸導(dǎo)致skywalking大盤空白
這篇文章主要為大家介紹了Elasticsearch寫入瓶頸導(dǎo)致skywalking大盤空白的解決方案,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步2022-02-02全解析Spring Cloud之負載均衡之LoadBalance
這篇文章主要介紹了全解析Spring Cloud之負載均衡之LoadBalance的相關(guān)資料,本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友一起看看吧2025-05-05java使用xfire搭建webservice服務(wù)的過程詳解
這篇文章主要介紹了java使用xfire搭建webservice服務(wù)的過程。使用xfire搭建webService的服務(wù),可以在瀏覽器訪問。對此感興趣的可以了解一下2020-07-07Mybatis執(zhí)行Update返回行數(shù)為負數(shù)的問題
這篇文章主要介紹了Mybatis執(zhí)行Update返回行數(shù)為負數(shù)的問題,具有很好的參考價值,希望大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12