對象和類 本篇正式進入面向對象的知識點簡述: 何為對象,佛曰:一花一世界,一木一浮生,一草一天堂,一葉一如來,一砂一極樂,一方一凈土,一笑一塵緣,一念一清靜。可見”萬物皆對象”。 對象:包含數據和操作的實體。 面向過程:面向的是完成這件事兒的過程,強調的是完成這件事兒的動作。 舉例:把大象塞進冰箱里 ...
對象和類
本篇正式進入面向對象的知識點簡述:
何為對象,佛曰:一花一世界,一木一浮生,一草一天堂,一葉一如來,一砂一極樂,一方一凈土,一笑一塵緣,一念一清靜。可見”萬物皆對象”。
對象:包含數據和操作的實體。
面向過程:面向的是完成這件事兒的過程,強調的是完成這件事兒的動作。
舉例:把大象塞進冰箱里
1、打開冰箱門
2、把大象塞進去
3、關閉冰箱門
如果我們用面向對象的思想來解決這件事兒,當執行這件事的人的不同的時候,我們需要為每個不同的人量身定做解決事情的方法。
面向對象:找個對象幫你做事兒。
把大象塞進冰箱里
我們把冰箱作為對象:
1、冰箱門可以被打開
2、大象可以被塞進冰箱里
3、冰箱門可以被關閉
這就是面向對象要乾的事。
我們在代碼中描述一個對象,通過描述這個對象的屬性和方法
對象必須是看得見摸得著的。
例如:
燈:屬性和方法
屬性:
外形:長的
亮度:500W
顏色:白色
牌子:XX
方法:發光
我們把這些具有相同屬性和相同方法的對象進行進一步的封裝,抽象出來 類這個概念。
類就是個模子,確定了對象應該具有的屬性和方法。
對象是根據類創建出來的。
類就是一個蓋大樓的圖紙 對象 就是蓋出來的大樓。
類:屬性和行為封裝起來的
聲明類的語法:[訪問修飾符]class<類名(自定義)>{}
[訪問修飾符] class 類名
{
欄位;
屬性;
方法;
}
代碼展示:
public class Student { //欄位 private string _name; //屬性 public string Name { //當你輸出屬性的值得時候 會執行get方法 get { return _name; } //當你給屬性賦值的時候 首先會執行set方法 set { _name = value; } } public void Say() { Console.WriteLine(); } }View Code
類與對象的區別:類和對象有著本質的區別,類是具體對象的抽象描述;而對象是真是的實體;由對象歸納為類,是歸納對象共性的過程;在類的基礎上,將狀態和行為實體化為對象的過程稱為實例化。
這裡有一個小案例(控制台程式):
static void Main(string[] args) { // Person sunQuan;//自定義類 // 創建Person類的對象 Person suQuan = new Person(); suQuan.Name = "笑顏"; suQuan.Age = -18; suQuan.Gender = '春'; suQuan.CHLSS(); Console.ReadKey(); } / / Person 自定義類 public class Person { private string _name; public string Name { //當你輸出屬性的值得時候 會執行get方法 get { return _name; } //當你給屬性賦值的時候 首先會執行set方法 set { _name = value; } } private int _age; public int Age { get { return _age; } set { if (value < 0 || value > 100) { value = 0; } _age = value; } } private char _gender; public char Gender { get { if (_gender != '男' && _gender != '女') { return _gender = '男'; } return _gender; } set { _gender = value; } } public void CHLSS() { Console.WriteLine("我叫{0},我今年{1}歲了,我是{2}生,我可以吃喝拉撒睡喲~~~", this.Name, this.Age, this.Gender); } }View Code
運行結果:
最後總結:類是對象的具體實現, 對象是類的抽象描述
最後打個小廣告:QQ群: .NET 一步步一幕幕 群號:590170361 (加群備註:博客園看到的)