1. 程式人生 > >四、面向對象語言的特點:封裝,繼承,多態 之封裝

四、面向對象語言的特點:封裝,繼承,多態 之封裝

pub 區分 oid 構造 情況 舉例 span 構造方法 直接

1.封裝的概念
廣義定義:類和方法本身就是封裝的體現
狹義定義:一個類的某些屬性,如果不希望外界直接訪問,就可以將這個屬性作為私有的【只有當前類持有】,然後暴露給外界一個訪問的方法

封裝的本質:屬性私有化的過程

舉例:插排


私有化在Java中使用private關鍵字來實現

2.private關鍵字的使用
如果修飾一個成員變量【屬性】,表示這個成員變量只能在當前類中被訪問
如果修飾一個成員方法,表示這個成員方法只能在當前類中被調用

3.get/set方法的方法
語法:
set方法----給成員變量賦值
public void setXxx(參數) {
//給成員變量賦值的語句
}
get方法----獲取成員變量的值
public 返回值類型 getXxx() {
return 成員變量
}

說明:
a.對於private修飾的成員變量,在外界不能直接訪問,如果非要訪問的話,則使用set方法賦值,使用get方法獲取值
b.不是必須要寫的
c.get和set方法的方法名其實是固定的,舉例:private String str;----->getStr,setStr

4.this關鍵字的使用
this表示對當前對象的引用


a.this.屬性
訪問當前類中的成員變量【屬性】

總結:
1>當私有成員變量的變量名稱和set方法中的形參名稱一致時,使用this來區分成員變量
2>用在有參的構造方法中,也是為了區分成員變量和形參名稱一致的情況


b.this.方法
訪問當前類中的其他方法

c.this()

四、面向對象語言的特點:封裝,繼承,多態 之封裝