在英語中類(class)是分類(classification)的根詞。設計類的過程就是對資訊進行分類,將相關資訊放到有意義的實體中。
封裝的目的:
封裝就是定義類的重要原則。中心思想是:使用類的程式不應該關心類內部如何工作。程式值需要建立類的例項並呼叫類中的方法。類為了執行其存在的方法,可能要維護各種內部狀態資訊,還需要在類中各種活動,在使用類的程式面前,這些額外的狀態資訊和行動是隱藏的,所以有時候稱之為資訊隱藏。
1、將方法和資料合併到類中,也就是為了支援分類。
2、控制對方法和資料的訪問,也是就為了控制類的作用。
定義並使用類:
c#中使用class關鍵字定義新類。類的資料和方法放在類的主體中。
首先新建乙個類。類中的**如下
using主函式部分:system;
using
system.collections.generic;
using
system.linq;
using
system.text;
//using system.text.regularexpressions;
namespace
tesetdata}}
usingc#命名和可訪問性system;
using
system.collections.generic;
using
system.linq;
using
system.text;
namespace
tesetdata}}
公共識別符號以大寫字母開頭,因為他是公共的,這是所謂pascalcase命名方法,
非公共識別符號,包括區域性變數以小寫字母開頭,因為他是私有的,就是camelcase命名法
注意:不要宣告名稱只有大小寫不同的兩個公共成員,口則在不區分大小寫的語言中就沒有辦法使用。
上面這個例子建立了乙個class1這個類。在這個類中申請了乙個int型資料並賦值為2,然後呼叫math.pi這個圓周率的近似值,double型的資料。時間圓面積的計算。
在上面這個例子有乙個問題就是不能訪問radius這個變數,從而不能再在類的外部修改這個變數的引數。解決方法使用構造器
構造器:是在建立類的例項中自動執行的方法,他與類同名,能獲取引數,但是不能返回任何值,每個類至少要有乙個構造器,如果不提供建構函式,系統會自動建立乙個控的建構函式。
即每乙個類需要乙個同名的建構函式。c#預設的構造器是麼有引數的構造器,至於由編譯器產生還是自己寫都不重要,還可以寫一系列非預設的構造器,有引數構造器。
上面這個例子是使用建構函式,來設定radius引數。當然也可以編寫幾個入口引數,這就是過載構造器。
分部類:
類可以包含大量的方法、字段、構造器。乙個功能齊全的類相當大。c#允許將類的源**分到單獨的檔案中。這樣,大型的定義就可以用較小的。更加容易管理的部分進行組織。
類被拆分到多個檔案中之後,要在每個檔案中使用partial分部關鍵字定義類不同的分部。這裡演示的是在乙個檔案中分部類,當然也可以是兩個檔案來寫。
C 類操作知識
1 類基礎 乙個類是乙個使用者自定義的型別,通常是一組成員構成,最常見的成員類別是資料成員和成員函式。成員函式可以定義初始化 拷貝 移動和析構 清理 等語義,對物件使用.操作來訪問成員,對指標使用 來訪問成員。乙個類包含乙個成員的名字空間,public成員提供類的介面,private成員提供實現的細...
C 類操作知識
1 類基礎 乙個類是乙個使用者自定義的型別,通常是一組成員構成,最常見的成員類別是資料成員和成員函式。成員函式可以定義初始化 拷貝 移動和析構 清理 等語義,對物件使用.操作來訪問成員,對指標使用 來訪問成員。乙個類包含乙個成員的名字空間,public成員提供類的介面,private成員提供實現的細...
C 類的基礎知識
類是物件導向程式設計的核心,是通過抽象資料型別方法實現的一種使用者自定義資料型別,它同時包含了資料和對資料進行操作的函式。利用類可以實現資料的封裝和隱藏。類是對某一類物件的抽象,而物件是某一種類的例項。類的定義 類的定義可以分為兩部分 說明部分和實現部分。說明部分說明類中包含的資料成員和成員函式,實...