一、簡介
描述:
- 生活中,我們要看電視,只需要按一下開關和換臺就可以了,我們沒有有必要了解電視機內部的結構,
- 制造廠家為了方便我們使用電視,把復雜的內部細節全部封裝起來,只給我們暴露簡單的介面,比如電源開關,
- 需要讓用戶知道的暴露出來,不需要讓用戶了解的全部隱藏起來,這就是封裝,
概念:
- 我們程式設計要追求“高內聚,低耦合”,高內聚就是類的內部資料操作細節自己完成,不允許外部干涉,低耦合就是僅暴露少量的方法給外部使用,
- 在定義一個物件的特性的時候,有必要決定這些特性的可見性,即哪些特性對外部是可見的,哪些特性用于表示內部狀態,
- 通常,應禁止直接訪問一個物件中資料的實際表示(屬性),而應通過操作介面來訪問,這稱為資訊隱藏,即封裝,
二、封裝的步驟
- 使用'private'關鍵字修飾需要封裝的屬性,
- 提供公開的方法設定或者訪問私有的屬性,例如set/get方法,
示例:
class Person {
/* 使用private封裝name屬性 */
private String name;
/* 提供公開的setName方法給外部,用于設定name屬性 */
public void setName(String name) {
this.name = name;
}
/* 提供公開的getName方法給外部,用于獲取name屬性 */
public String getName() {
return this.name;
}
}
public class Test {
public static void main(String[] args) {
Person person = new Person();
person.setName("張三");
System.out.println(person.getName());//張三
}
}
三、作用和意義
- 便于修改內部代碼,提高系統的可維護性,
- 提高程式的安全性,保護資料,
- 可進行資料完整性檢測,保證資料的有效性,
- 隱藏代碼的實作細節,
- 統一用戶的呼叫介面,
- 便于呼叫者呼叫,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/227067.html
標籤:其他
上一篇:Java 命名之道
