Java 封裝的詳解

2021-07-14 22:20:12 字數 2071 閱讀 4113

我們日常使用的電腦主機,把cpu

、記憶體、主機板等等都封裝到機箱裡面去。假如沒有機箱的話的出現什麼問題,主機、主機板全部都散落在一處,然後開機沒有開機按鈕,那麼需要我們直接操作接跳線才能把電腦開啟。這樣子的話假如操作不慎的話,會讓機器損壞危險,那麼假如用機箱封裝起來的話,那麼就不需要這樣子做了。體現了封裝的

---安全特性。

你拿電腦去加記憶體,可以直接給電腦給維修的人,等他加好記憶體了之後。你拿到的還是那個機箱,裡面發生了怎樣子的變化你並不知道。封裝的第二個好處-將變化隔離。

在機箱裡面提供乙個開機按鈕,而不需要你直接使用跳線開機的話,體現了封裝的—便於使用的特性。

只要機箱提供了乙個開機的功能,然後無論這個機箱拿到**去,都可以使用這個開機的功能.

體現了封裝的

---提供重複性的特性。

對比一下沒有封裝和有封裝~

一,沒有封裝的時候:

模擬問題

1. 描述employee

類。定義姓名,工號,性別的成員變數,和工作的方法。成員使用

public

修飾。

2. 建立employee

物件,物件

.成員的方式進行賦值。最後該物件呼叫工作方法。

3. 總結:如果不使用封裝,很容易賦值錯誤,並且任何人都可以更改,造成資訊的    不安全。

4. 問題解決:使用封裝

public class employeedemo 

}class employee

}

二,有封裝的時候:

1:設定類的屬性為private(

關鍵字),不能使用物件名.

屬性名的方式直接訪問物件的屬性。

public class employeedemo 

}class employee

}

2:修改

employee

類 性別的修飾符修改為

private

1:編譯不通過 2:

private

修飾的成員在自己所在的類中可以使用,在類外邊不可以使用。 3:

employee

類的gender

的修飾符修改為

private

後,無法再類外呼叫,那麼如何給

gender

設定值?

1:對外提供公開的用於設定物件屬性的

public方法

1:設定

set

2:獲取

get

2:在set

方法中加入邏輯判斷,過濾掉非法資料。

3:將所有的成員變數封裝加上

private

,提供get

、set方法

public class employeedemo 

}class employee

public void setname(string n)

public string getid()

public void setid(string i)

public string getgender()

public void setgender(string gen) else

} public void work()

}

三,封裝的好處:

1:隱藏了類的具體實現

2:操作簡單

3:提高物件資料的安全性

寫乙個例子吧~

描述乙個計算器類

class calculator

// 2.2 定義計算的功能

public void calculate()

case '%':

default : system.out.println("你在搗亂,我不理你,氣死你......");

} }

}class demo9

}

java封裝詳解

1.封裝的定義 隱藏物件內部的複雜性,只對外提供簡單的介面。便於外界的呼叫,從而提高系統的可擴充套件性,可維護性。public class employee public void setname string n public string getid public void setid stri...

Java基礎知識複習(封裝詳解)

封裝 是指隱藏物件的屬性和實現細節,僅對外提供公共訪問方式,是物件導向方法中重要原則。好處 1 可以徹底的隱藏方法的內部實現,僅提供乙個呼叫方法,使用這個類時不需要關心是如何實現的,只需知道如何呼叫即可。2 提高物件資料的安全性。3 提高重用性。原則 使用公有與私有這兩個訪問修飾符,將不需要對外提供...

Java之類的封裝

將物件的狀態資訊隱藏在物件內部,不允許外部程式直接訪問物件內部資訊,而是通過該類所提供的方法來實現對內部資訊的操作和訪問。封裝是通過設定訪問控制符實現的,他們的訪問控制如下 訪問許可權 類 包 子類 全域性範圍 public protect default private 訪問控制符可用於修飾的成員...