1. 程式人生 > >c#基礎(三)Public、Private以及Protected的區別

c#基礎(三)Public、Private以及Protected的區別

    被public修飾的成員可以被類的內部或者是外部直接訪問,而private成員只能被類的內部訪問,如果類內部的成員不希望被外界訪問,那麼可以將其宣告為private,這樣的話就可以對不希望被訪問的成員進行保護。正常情況下,在某一個類中,欄位(field)或者是成員變數(member variable)一般被宣告為private,如果要給成員變數賦值,可以通過一個被宣告為public的方法來完成,這樣操作的好處是可以在給成員變數賦值前對其進行控制、處理,防止輸入不符合條件的值。

    如果父類中的一個成員被修飾成private,在該父類的子類中就無法訪問到該成員,子類只能通過父類中的非private方法去間接的訪問被private修飾的父類成員。如果父類中的成員被修飾為protected,那麼無論是在子類或是在父類中都可以訪問到該成員,但是無法被外部訪問。

    所以綜上所述,public的訪問級別最高,protected級別次之,而private級別位於最後。如果在系統開發中有安全性方面的考慮可以通過這三個修飾符來進行許可權控制。

相關推薦

c#基礎PublicPrivate以及Protected區別

    被public修飾的成員可以被類的內部或者是外部直接訪問,而private成員只能被類的內部訪問,如果類內部的成員不希望被外界訪問,那麼可以將其宣告為private,這樣的話就可以對不希望被訪問的成員進行保護。正常情況下,在某一個類中,欄位(field)或者是成員變數

c++基礎

AC 形式 double類型 轉換成 img TP ret 初始 IT 選擇結構 if語句: if語句的語法形式 if (表達式) 語句 例:if (x > y) cout << x; if (表達式) 語句1 else 語句2 例:if (x >

C++ 基礎C++標頭檔案與原始檔的使用方法 舉例

看完這篇文章,你就知道怎麼用標頭檔案和原始檔了 http://www.cnblogs.com/fenghuan/p/4794514.html 標頭檔案:常量、變數、函式、類的宣告 原始檔:變數的定義和函式的實現 步驟一、先建立標頭檔案 #ifndef CIRCLE_H #defi

C#基礎19——pathFile類的基本操作

1、path類 F12轉到定義,這是靜態類,可以[類名].方法名: 以前的方法擷取字串: using System; using System.Collections.Generic; using System.IO; using System.L

python基礎----字符編碼以及文件處理

odin mod window 存儲空間 表示 一行 內存數據 rec 錯誤 字符編碼與文件處理 一.字符編碼 由字符翻譯成二進制數字的過程 字符--------(翻譯過程)------->數字 這個過程實際就是一個字符如何對應一個特定數字的標準,這個標準

Python 基礎——流程控制之break continue else

sim 流程 tin rime con python 基礎 完整 .py gpo break break 語句和 C 中的類似,用於跳出最近的一級 for 或 while 循環。 循環可以有一個 else 子句;它在循環叠代完整個列表(對於 for )或執行條件為 fals

Linux基礎——文件權限管理&光盤鏡像掛載

linuxLinux文件權限管理 更改文檔歸屬 ls -ld 文檔... 查看文件歸屬 chown -R(目錄) 屬主 文檔... chown -R :屬組 文檔... chown -R 屬主:屬組 文檔... 同時

JAVA基礎複習繼承多型抽象類和介面

1、超類也稱為父類或者基類,次類又稱為子類或者拓展類、派生類。子類從它的父類中繼承可訪問的資料域和方法,還可以新增新資料域和新方法。 2、繼承:子類並不是父類的一個子集,子類比它的父類包含更多的資訊和方法;父類中的私有資料域在該類之外是不可訪問的;不是所有是一種關係都應該用繼承來建模,但是繼承是

python學習字典元組字串 語法基礎與常用操作

元組,也算是一個list,但是元組不能修改,比如定義一個數據庫的連線資訊,定義之後不能被修改。用()括號表示,用逗號隔開,比如:mysql=(‘192.168.xx.xxx’,’root’,’123456’) 操作 :count、index count操作:計算元素出現的次數

Python基礎--- Python面向物件oop,類方法和變數,繼承

一、面向物件oop ----------------------------------------------------- 1.類 用來描述具有相同的屬性和方法的物件的集合。 它定義了該集合中每個物件所共有的屬性和方法。 物件是類的例項。

JAVA語言基礎——跳轉語句陣列

Java程式語句執行的順序包括4種基本控制結構: (1)順序結構; (2)選擇結構:if語句和switch語句; (3)迴圈結構:for、while、do……while、for each; (4)異常處理邏輯結構。 一、跳轉語句 跳轉語句用於無條件地轉移控制。使用跳轉語句執行分支,該

C#.網路程式設計 Socket基礎 基於WinForm系統Socket TCP協議 實現端到端伺服器與客戶端.txt.word.png等不同型別檔案傳輸

一、簡介: 前面的兩篇介紹了字串傳輸、圖片傳輸: 其實,本文針對Socket基礎(二)進一步完成,以便可以進行多種檔案傳輸。 二、基於不同的流(檔案流、記憶體流、網路等)讀寫。 1、圖片傳輸 方法一:(在客戶端用檔案流傳送(即將圖片寫到檔案流去,以便傳送),

C# 基礎C# 十進位制二進位制八進位制十六進位制

一、轉換 //十進位制轉二進位制 Console.WriteLine(Convert.ToString(69, 2)); //十進位制轉八進位制 Console.WriteLine(Convert.ToString(69, 8)); //十進位制轉十六進位制 Console

C# 基礎十三C# 軟體開發過程中,可執行檔案.exe 出現bug,該怎麼排查解決:找到出現bug的位置

一、簡介 之前是完成了寫軟體,從而實現軟體的基本功能。到了今天,需要對自己寫的可執行檔案.exe找bug了。那麼下面,我將結合自己的軟體的使用過程中,講自己的經驗融入進來,解釋下什麼是bug、以及該怎麼找Bug。 二、Bug的分類 主要參考: https://blog.csdn.ne

C++ 基礎使用vs2015封裝c++生成.dll檔案.lib檔案.h檔案後,給另一個工程使用:使用前,需配置標頭檔案.h靜態庫.lib和 動態庫.dll 專案屬性

一、簡介 我是一個認真的人,要麼不寫,要麼我就把步驟、截圖、程式碼,一 一 附上,方便大家參考學習。 1、為什麼要生成DLL和lib?      就是為了給VS工程呼叫(比如C#呼叫、C++工程)。 2、C#為什麼要呼叫DLL和lib? C++寫的程

C# 基礎十三C# XML配置檔案ini配置檔案的建立讀寫:動態修改IP

一、簡介 傳統的配置檔案ini已有被xml檔案逐步代替的趨勢,這裡主要討論XML配置檔案。 二、ini網址 https://www.cnblogs.com/cncc/p/3415694.html(重點) https://www.cnblogs.com/xmy-007/p/640022

C#語法基礎----窗體設計

MessageBox   1、 MessageBox.Show("登陸成功!"); 2、 MessageBox.Show("登陸成功", "提示"); 可以給訊息框加上標題 3、 if (MessageBo

H5移動端開發基礎自定義滾動條實戰-音悅臺

自定義滾動條、實戰-音悅臺 自定義滾動條 js封裝 transform.js tween.js scrollBar.js 音悅臺 適配 樣式 html

C++Primer》讀書筆記字串向量陣列

名稱空間using宣告 (1)本節學習最安全的方法使用using宣告 using namespace::name 注意:使用一個名字就要有其對應的uesing宣告,如:using std::cin; (2)標頭檔案不應包含using宣告 - 標

C/C++程式設計細節——類繼承模板運算子過載

1、類、派生類       C++中類的概念很重要,重要到什麼程度呢?把class/struct看成和main同一個等級,為什麼這麼說呢?因為,C++中不允許全域性變數獨立於類外, 所以,在一個C+