16、Java中級進階 面向物件 封裝
阿新 • • 發佈:2020-07-21
1、封裝概述
封裝可以被認為是一個保護屏障,將類的某些信息隱藏在類內部,不允許外部程序直接訪問,而是通過類提供的方法來實現對隱藏信息的操作訪問,可以有效的防止該類的代碼和數據被其他類隨意訪問。
要訪問該類的數據或者方法,必須通過指定的方式。適當的封裝可以讓代碼更容易理解與維護,也加強了代碼的安全性。
面向編程語言是對世界的模擬,客觀世界裡成員變量都是隱藏在對象內部的,外界無法直接操作和修改。
2、封裝的原則
將屬性隱藏起來,若需要訪問某個屬性,提供公共方法對其訪問。
3、封裝的好處
A 要訪問該類的代碼和數據,必須通過嚴格的接口控制,只能通過規定的方法訪問數據。
B 隱藏類的實例細節,方便修改和實現,封裝可以被認為是一個保護屏障,防止該類的代碼和數據被外部類定義
的代碼隨機訪問。
C 封裝最主要的功能在於我們能修改自己的實現代碼,而不用修改那些調用我們代碼的程序片段。
D 適當的封裝可以讓程式碼更容易理解與維護,也加強了程式碼的安全性。
4、封裝的實現步驟
a、修改屬性的可見性,設置為private(private詳細可以參看5、Java 修飾符)
b、創建屬性的set以及get方法,用於屬性的讀寫
c、可以在set和get方法中加入 屬性控制語句,對屬性值的合法性進行判斷
5、封裝的具體實例
packagecn.fage.bilibili;
/**
*@authorlin
*@version1.0
*@date2020-07-0810:20
*@DescriptionTODO
*/
publicclassPerson{
privateStringname;
/**
*性別
*/
privateStringgender;
privateintage;
publicS