Unity中C 封裝特性詳解

2021-09-12 00:11:58 字數 1643 閱讀 1889

封裝被定義為"把乙個或多個專案封閉在乙個物理的或者邏輯的包中"。在物件導向程式設計方**中,封裝是為了防止對實現細節的訪問。

抽象和封裝是物件導向程式設計的相關特性。抽象允許相關資訊視覺化,封裝則使開發者實現所需級別的抽象。

c# 封裝根據具體的需要,設定使用者的訪問許可權,並通過訪問修飾符來實現。

乙個訪問修飾符定義了乙個類成員的範圍和可見性。c# 支援的訪問修飾符如下所示:

public 訪問修飾符允許乙個類將其成員變數和成員函式暴露給其他的函式和物件。任何公有成員可以被外部的類訪問。

下面的例項說明了這點:

當上面的**被編譯和執行時,它會產生下列結果:

長度: 4.5

寬度: 3.5

面積: 15.75

在上面的例項中,成員變數 length 和 width 被宣告為public,所以它們可以被函式 main() 使用 rectangle 類的例項r訪問。

成員函式 display() 和 getarea() 可以直接訪問這些變數。

成員函式 display() 也被宣告為public,所以它也能被 main() 使用 rectangle 類的例項r訪問。

private 訪問修飾符允許乙個類將其成員變數和成員函式對其他的函式和物件進行隱藏。只有同乙個類中的函式可以訪問它的私有成員。即使是類的例項也不能訪問它的私有成員。

下面的例項說明了這點:

當上面的**被編譯和執行時,它會產生下列結果:

請輸入長度:

4.4請輸入寬度:

3.3長度: 4.4

寬度: 3.3

面積: 14.52

在上面的例項中,成員變數 length 和 width 被宣告為private,所以它們不能被函式 main() 訪問。

成員函式 acceptdetails() 和 display() 可以訪問這些變數。

由於成員函式 acceptdetails() 和 display() 被宣告為public,所以它們可以被 main() 使用 rectangle 類的例項r訪問。

protected 訪問修飾符允許子類訪問它的基類的成員變數和成員函式。這樣有助於實現繼承。我們將在繼承的章節詳細討論這個。更詳細地討論這個。

internal 訪問說明符允許乙個類將其成員變數和成員函式暴露給當前程式中的其他函式和物件。換句話說,帶有 internal 訪問修飾符的任何成員可以被定義在該成員所定義的應用程式內的任何類或方法訪問。

下面的例項說明了這點:

當上面的**被編譯和執行時,它會產生下列結果:

長度: 4.5

寬度: 3.5

面積: 15.75

在上面的例項中,請注意成員函式 getarea() 宣告的時候不帶有任何訪問修飾符。如果沒有指定訪問修飾符,則使用類成員的預設訪問修飾符,即為private

protected internal 訪問修飾符允許在本類,派生類或者包含該類的程式集中訪問。這也被用於實現繼承。

Unity中C 多型特性介紹

多型性意味著有多重形式。在物件導向程式設計正規化中,多型性往往表現為 乙個介面,多個功能 多型性可以是靜態的或動態的。在靜態多型性中,函式的響應是在編譯時發生的。在動態多型性中,函式的響應是在執行時發生的。在編譯時,函式和物件的連線機制被稱為早期繫結,也被稱為靜態繫結。c 提供了兩種技術來實現靜態多...

C 中關於封裝 詳解

封裝 即隱藏物件的屬性和實現細節,僅對外公開介面,控制在程式中屬性的讀和修改的訪問級別 將抽象得到的資料和行為 或功能 相結合,形成乙個有機的整體,也就是將資料與運算元據的源 進行有機的結合,形成 類 其中資料和函式都是類的成員。封裝的作用 封裝最主要的功能在於我們能修改自己的實現 而不用修改那些呼...

C 詳解特性

在過去,以一種語言編寫的軟體元件 exe 或 dll 不能方便地使用以另一種語言編寫的軟體元件。在這個問題的解決上,com 向前邁進了一步。net framework 允許編譯器向所有的模組和程式集發出附加的說明性資訊,從而使元件互用更加簡單。這種叫做 元資料 的資訊有助於元件無縫互動。元資料是一種...