C# 类、对象、方法和属性详解(重新排版,页面整洁)
目錄
一、相關(guān)概念:
二、類的定義與語(yǔ)法
三、類成員:數(shù)據(jù)成員和字段
三、實(shí)例化對(duì)象:關(guān)鍵字:new
四、屬性
五、方法的參數(shù)
一、相關(guān)概念:
相互關(guān)系:類是對(duì)象的抽象,對(duì)象是類的實(shí)例,類是一種抽象的分類,對(duì)象則是具體事物。
??? 比如:如果車是一個(gè)類,某個(gè)人的一輛奔馳車就是一個(gè)對(duì)象,車的顏色質(zhì)量就是它的屬性,啟動(dòng)、停止這些動(dòng)作則可以定義為車的方法。
二、類的定義與語(yǔ)法
- 定義類:
- 類的訪問修飾符:public internal
三、類成員:數(shù)據(jù)成員和字段
a) 數(shù)據(jù)成員:字段和常量 字段:變量 聲明:類型 字段名例: public class Persion {public string name; }b) 方法成員 (方法是類的行為,告訴我們類能夠做什么,)- 實(shí)例方法
- 靜態(tài)方法
靜態(tài)方法與實(shí)例方法的區(qū)別:靜態(tài)方法只與類有關(guān),它不依賴于對(duì)象的存在而存在;實(shí)例方法則在對(duì)象存在后才能使用。
-
成員的訪問修飾符:public、private、protected、internal
?a) ?public:公有成員
?b)? private:私有成員
?c)? protected:保護(hù)成員
?d)? internal:內(nèi)部成員
下面理解之間的區(qū)別
using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace ConsoleApplication2 {public class Employee{private float sum;public int day;public float wage;//定義方法輸出工資信息public void Show(){sum = day * wage;Console.WriteLine("工作時(shí)間:{0},每天工資:{1},總工資:{2}",day,wage,sum);}}class Program{static void Main(string[] args){Employee employee = new Employee();employee.day = 20;employee.wage = 50;//employee.sum:無(wú)法訪問 因?yàn)樗鼮樗接谐蓡T//調(diào)用方法現(xiàn)實(shí)工資employee.Show();}} }三、實(shí)例化對(duì)象:關(guān)鍵字:new
- 語(yǔ)法:類 對(duì)象名稱=new?類();
?
四、屬性
b)?屬性用途:保證數(shù)據(jù)安全,作數(shù)據(jù)的驗(yàn)證
聲明
訪問修飾符 數(shù)據(jù)類型 屬性名{get{return 字段;} //讀訪問器,通過它外部用戶可以讀取屬性的值set{字段=value;} //寫訪問器,通過它外部用戶可以為屬性賦值,用戶輸入的值就存放在value關(guān)鍵字中,并可以進(jìn)行輸入值驗(yàn)證 }例: public class Student {private int age; //私有字段,防止用戶直接訪問public int Age{get{return age;} //用于讀取age的值set{if((value>=18)&&(value<=45)) age=value; //為age賦值并驗(yàn)證else age=18;}} }特殊屬性:
?
五、方法的參數(shù)
1、值參數(shù):按值傳遞
2、引用參數(shù):向方法傳遞實(shí)參在內(nèi)存中的地址,按地址傳遞
3、輸出參數(shù):從方法傳遞回一個(gè)結(jié)果
關(guān)鍵字:out
4、數(shù)組型參數(shù):參數(shù)只允許是一組數(shù)組,當(dāng)方法的參數(shù)前帶有params關(guān)鍵字時(shí),就是帶數(shù)組型參數(shù)的方法(使用引用傳遞)
?
??????? 本文章只是感覺不錯(cuò),重新排版后發(fā)布 便于閱讀和理解。
感謝文章的創(chuàng)作者!
總結(jié)
以上是生活随笔為你收集整理的C# 类、对象、方法和属性详解(重新排版,页面整洁)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# textBox1.Append/T
- 下一篇: J-LINK不能烧写(错误:JLink