上面這段代碼說明什麼呢?我們定義了一個Computer類,類裡定義了幾個成員,還有構造方法等.為了更 清晰的說明這樣做的目的,我們可以先來做個測試.建立兩個對象,然後判斷他門的屬性是不是同一個.代碼 如下:
1class Program
2{
3 static void Main(string[] args)
4 {
5 Computer zhangsan = new Computer("張三");
6 Computer lisi = new Computer("李四");
7
8 Console.WriteLine(zhangsan.主板 == lisi.主板);
9 }
10}
通過運行上面程序段,結果為:true.這說明什麼,說明張三的主板和李四的主板是同一個嗎?不是,我們 應該說張三和李四都是使用的同一個類的對象.這裡Computer類到底做了什麼呢?封裝屬性和行為嗎?最容 易的理解便是把這個類看作是一種新的數據類型.也就是說Computer是一種數據類型,而zhangsan和lisi則 是這種新數據類型的變量,用OOP的話來說的話,zhangsan和lisi則是Computer這個對象的實例或是對象.
三、類的相關特性
類的特性有很多,這裡我就簡單的介紹下最常用的幾個特性。
1. 類名
類名是唯一一個用於區分其他類的特性,如同人的名字一樣。當然在同一個項目或是程序集或是框架 中,會出現同名的類,就如同世界之大,名字相同的人到處都有一樣。而現實生活中的同名人可以根據他 所在的國家、省份、區縣、鄉村以及家庭來區分,對於同名的類呢則是通過命名空間來區分的。
如上電腦類Computer,Computer就是電腦類的類名,用這個名字類區分其他類。
2. 屬性
屬性是一個類的重要組成部分,就以上面的電腦類(Computer)來說吧。name,主板,顯卡等都是 Computer類的屬性。我們可以通過類對象(實例對象)去訪問他們,示意性代碼如下:
1class Computer
2{
3 public string Name = "張三";
4}
5class TestComputer
6{
7 void Method()
8 {
9 Computer computer = new Computer();
10 Console.WriteLine(computer.Name);
11 }
12}
在實際的開發中,我們通常將屬性設置為private的,通過對外提供get;set;屬性訪問器供外部調用, 關於這點這裡就不作詳細介紹。