c#語言的主要模組,包括變數、資料型別和程式流語句,如何把這些內容組合在一起,構成乙個完整的程式,其關鍵就在於對類的處理。
類和結構實際上都是建立物件的模板,每個物件都包含資料,並提供了處理和訪問資料的方法。類定義了類的每個物件(稱為例項)可以包含什麼資料和功能。例如,如果乙個類表示乙個顧客,就可以定義欄位customerid、
firstname
、lastname
和address
,以包含該顧客的資訊。還可以定義處理在這些欄位中儲存的資料的功能。接著,就可以例項化類的乙個物件,來表示某個顧客,為這個例項設定相關欄位的值,並使用其功能。
classcustomer
public const string dayofsendingbill="monday";
public int customerid;
public string firstname;
public string lastname;
結構不同於類,因為它們不需要在堆上分配空間(類是引用型別,總是儲存在堆(堆(heap)上
),而結構是值型別,通常儲存在棧(stack)上
,另外,結構不支援繼承。較小的資料型別使用結構可提高效能。但在語法上,結構與類非常相似,主要的區別是使用關鍵字struct代替
class
來宣告結構。
例如,如果希望所有的phonecustomer例項都分布在棧上,而不是分布在託管堆上,就可以編寫下面的語句:
struct customerstruct
public const string dayofsendingbill = "monday";
public int customerid;
public string firstname;
public string lastname;
對於類和結構,都使用關鍵字new來宣告例項: 這個 關鍵字 建立 物件 並對 其 進行 初始化。 在下面的例子中,類和結構的字段值都預設為0:
var mycustomer = new customer(); // 作為乙個類操作
var mycustomer2 = new customerstruct(); // 作為乙個結構操作
在大多數情況下,類要比結構常用得多。因此,我們先討論類,然後指出類和結構的區別,以及選擇使用結構而不使用類的特殊原因。但除非特別說明,否則就可以假定用於類的**也適用於結構。
注意:類和結構的乙個重要區別是,類型別的物件通過引用傳遞,結構型別的物件按值傳遞。
類和物件(一) 類 物件概念及定義
c 是基於物件導向的語言,並不是純物件導向的語言,因為它包含c的部分,c是面向過程的語言 一 物件導向 概念 物件導向程式設計 oop 是一種程式設計的泛型,同時也是一種程式開發的方法,它將物件作為程式的基本單元,將程式和資料封裝其中,以提高軟體的重用性 靈活性和擴充套件性 二 類和物件的概念 類 ...
Java學習(一) 類和物件
一 物件 在街上偶遇乙個明星,那麼該明星就可以被定義為乙個物件,那麼該物件有兩方面的定義 狀態和行為。明星有狀態 年齡,身高,體重,籍貫。明星有行為 唱歌,跳舞,彈琴,拍照。所以,物件可以定義成包含狀態和行為的實體,物件 object 也稱為例項 instance 實體是存在於現實世界中並且可以與其...
C 學習摘要之一 類和物件
第一章 類和物件 類和物件是物件導向程式設計的兩個最基本 最重要的概念。所謂物件就是客觀事務在計算機中的抽象描述 而所謂類則是對具有相似屬性和行為的一組物件的統一描述。從程式語言的角度來說,類是一種資料型別,而物件是具有這種型別的變數。類定義的一般形式為 class 類名 各成員函式的實現 其中,c...