1. 程式人生 > >C#中。簡述 private、 protected、 public、 internal 修飾符的訪問許可權

C#中。簡述 private、 protected、 public、 internal 修飾符的訪問許可權

private : 私有成員, 在類的內部才可以訪問。

protected : 保護成員,該類內部和繼承類中可以訪問。

public :  公共成員,完全公開,沒有訪問限制。

internal: 當前程式集內可以訪問。

程式集是 .NET Framework 應用程式的主要構造塊。所有託管型別和資源都包含在某個程式集內,並被標記為只能在該程式集的內部訪問,或者被標記為可以從其他程式集中的程式碼訪問。程式集在安全方面也起著重要作用。程式碼訪問安全系統使用程式集資訊來確定為程式集中的程式碼授予的許可權集。  程式集是 .NET Framework 程式設計的基本組成部分。程式集執行以下功能:

1.包含執行的程式碼。如果可移植可執行 (PE) 檔案沒有相關聯的程式集清單,則將不執行該檔案中的 Microsoft 中間語言 (MSIL) 程式碼。請注意,每個程式集只能有一個入口點(即 DllMainWinMain Main)。  程式集形成安全邊界。程式集就是在其中請求和授予許可權的單元。有關應用於程式集的安全邊界的更多資訊,請參見程式集安全注意事項。2.程式集形成型別邊界。每一型別的標識均包括該型別所駐留的程式集的名稱。在一個程式集範圍內載入的 MyType 型別不同於在其他程式集範圍內載入的 MyType 型別。3.程式集形成引用範圍邊界。程式集的清單包含用於解析型別和滿足資源請求的程式集
元資料。它指定在該程式集之外公開的型別和資源。該清單還列舉它所依賴的其他程式集。4.程式集形成版本邊界。程式集是公共語言執行庫中最小的可版本化單元,同一程式集中的所有型別和資源均會被版本化為一個單元。程式集的清單描述您為任何依賴項程式集所指定的版本依賴性。5.程式集形成部署單元。當一個應用程式啟動時,只有該應用程式最初呼叫的程式集必須存在。其他程式集(例如本地化資源和包含實用工具類的程式集)可以按需檢索。這就使應用程式在第一次下載時保持精簡。6.程式集是支援涇渭執行的單元。有關執行多個程式集版本的更多資訊,請參見程式集和涇渭 (side-by-side) 執行。  程式集可以是靜態的或動態的。靜態程式集可以包括
.NET Framework 型別(介面和類),以及該程式集的資源(點陣圖、JPEG 檔案、資原始檔等)。靜態程式集儲存在磁碟上的可移植可執行 (PE) 檔案中。您還可以使用 .NET Framework 來建立動態程式集,動態程式集直接從記憶體執行並且在執行前不儲存到磁碟上。您可以在執行動態程式集後將它們儲存在磁碟上。 有幾種建立程式集的方法。您可以使用過去用來建立 .dll .exe 檔案的開發工具,例如 Visual Studio .NET。您可以使用在 .NET Framework SDK 中提供的工具來建立帶有在其他開發環境中建立的模組的程式集。您還可以使用公共語言執行庫 API(例如 Reflection.Emit)來建立動態程式集。