C#入門系列 -- 類及其成員介紹

      網友投稿 1126 2025-03-31

      軟件開發的兩種最主要的方式為面向對象和面向過程。


      面向過程的焦點主要放在指令的組合和優化上。

      面向對象的焦點從優化指令轉移到組織程序的數據和功能上。

      定義

      程序的數據和功能被組織為邏輯上相關的數據項和函數的封裝集合,稱之為類。

      類作為一個有機不可分的整體,對外隱藏具體實現細節,從而實現可重用和易維護等特性,同時還提供了繼承功能,支持子類獲得父類特征。

      C#入門系列 -- 類及其成員介紹

      類的出現使得程序員在求解現實問題中逐步從面向過程上升到了面向對象。

      類(Class)是一個能存儲數據并執行代碼的數據結構,是邏輯相關的數據和函數的封裝,通常代表真實世界中的或概念上的事物。

      類包括以下內容:

      數據成員: 數據成員用來存儲與類或對象相關的數據。數據成員通常模擬該類所表示的現實世界事物的特性。

      函數成員: 函數成員執行代碼,通常模擬類所表示的現實世界事物的功能和操作。

      一個C#類可以有任意數目的數據成員和函數成員,類是用戶自定義數據類型。

      C# 定義類的一般形式為:

      [類修飾符] class 類名 { 成員列表; }

      大括號括起來的部分稱為類體,同時大括號作為類成員的邊界符,所有類的成員必須在大括號內進行聲明。

      沒有任何成員的類稱為空類。

      類定義與結構體類型定義一樣,系統不會為它分配存儲空間。

      修飾符

      類修飾符及其含義:

      同一修飾符在一個類聲明中多次出現會編譯出錯。常見的類聲明中只涉及4個訪問修飾符,最常用的可訪問性級別有:public和internal,類的默認可訪問級別為public。

      所有顯式聲明在類中的成員都是互相可見的,無論這些成員具有何種訪問控制屬性;

      類的成員不會具有比類的整體更開放的訪問權限;

      訪問修飾符可以以任意順序出現零次或多次,一個訪問修飾符只修飾當前的一個類成員。

      如果一個成員在聲明時沒有攜帶任何訪問修飾符,則默認它是私有成員。

      成員定義

      數據成員的一般定義形式;

      類在定義時必須給出各數據成員的聲明,聲明數據成員的一般形式為:

      class 類名 { …… 訪問修飾符 數據成員類型 數據成員名稱列表; …… }

      函數成員的一般定義形式:

      class 類名 { …… 訪問修飾符 返回類型 成員函數名(形式參數列表) { 函數體 } …… }

      類的函數成員具備訪問類數據成員的權限,一般被作為類與外界交互的接口。

      聲明在類中的成員對系統的不同部分可見,這依賴于類聲明中指派給它的訪問修飾符。

      類的每個數據成員和函數成員都有訪問控制屬性,決定可對之訪問的訪問源有那些。

      靜態成員

      針對成員定義時是否使用關鍵字static進行修飾,可以將類的成員分為實例成員和靜態成員。

      靜態成員與類而不是類對象相關。

      當字段、方法、屬性、事件、運算符或構造函數聲明中含有static修飾符時,它聲明靜態成員。

      類的常量成員會隱式地聲明靜態成員。

      靜態成員具有下列特征:

      使用類名.成員名的形式進行引用;

      靜態字段的存儲由類的所有對象共享,只有一個副本;

      靜態函數成員不能作用于具體的對象,不能使用this訪問器訪問。

      實例成員

      實例成員有時稱為非靜態成員,它與類的對象相關。

      當字段、方法、屬性、事件、索引器、構造函數或析構函數的聲明中不包含static修飾符時,它聲明為實例成員。

      實例成員具有以下特點:

      使用類對象名.成員名的形式進行引用;

      類的每個對象分別包含一組該類的所有實例字段;實例函數成員作用于類的給定對象,可借助this訪問器訪

      問。

      代碼示例

      class Test { // 私有數據成員 -- 外部不能直接訪問 private int a; // 公開數據成員 -- 外部可通過實例訪問 public int B; // 公開靜態數據成員 -- 訪問不受限制 public static int C; // 受保護的數據成員 -- 外部不能直接訪問,但其子類可以訪問 protected int D; // 內部數據成員 -- 程序集內可以訪問 internal int E; }

      C#

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:億圖甘特圖(億圖甘特圖畫法)
      下一篇:如何計算單元格中大寫或小寫字母的數量?
      相關文章
      自拍偷自拍亚洲精品播放| 亚洲av无码潮喷在线观看| 亚洲最大在线视频| 亚洲国产精品不卡在线电影| 在线a亚洲v天堂网2019无码| 亚洲精品老司机在线观看| 亚洲国产精品一区二区第一页免| 久久久久亚洲精品无码网址色欲| 亚洲色偷偷综合亚洲AV伊人蜜桃| 在线a亚洲老鸭窝天堂av高清| 亚洲综合校园春色| 亚洲免费福利在线视频| 国产精品亚洲片在线va| 亚洲色偷偷偷综合网| 亚洲精品无码永久在线观看男男| 亚洲欧美不卡高清在线| 亚洲欧美精品午睡沙发| 亚洲av中文无码字幕色不卡| 亚洲爆乳少妇无码激情| 香蕉视频亚洲一级| 亚洲精品456播放| 伊人久久精品亚洲午夜| 亚洲综合日韩久久成人AV| 亚洲va中文字幕无码久久不卡| 亚洲成人中文字幕| 91亚洲一区二区在线观看不卡| 亚洲高清美女一区二区三区| 亚洲婷婷天堂在线综合| 亚洲精品456人成在线| 亚洲精品久久无码av片俺去也| 久久久久亚洲AV无码去区首| 日批日出水久久亚洲精品tv| 亚洲综合色成在线播放| 国产亚洲精久久久久久无码| 亚洲国产成人私人影院| 亚洲国色天香视频| 亚洲精品美女久久7777777| 亚洲AV无码乱码在线观看| 久久久久一级精品亚洲国产成人综合AV区| 中文字幕第13亚洲另类| 亚洲av日韩av无码黑人|