《蘇坤《面向?qū)ο蟆芬曨l教程筆記》由會員分享,可在線閱讀,更多相關(guān)《蘇坤《面向?qū)ο蟆芬曨l教程筆記(12頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、如果您需要使用本文檔,請點擊下載按鈕下載!
面向?qū)ο蠊P記
一、面向?qū)ο蟾拍?
1.對象:萬物皆對象。
即為實實在在存在的東西,就是對象。
2.屬性:對象具有的各種特征。
例如:某個人的姓名,性別,年齡。
3.每個對象的每個屬性都擁有特定值。
例如:楊老師和張三的年齡不一樣
4.屬性的值:即為屬性對應(yīng)的具體值。
5.方法:行為,動作。執(zhí)行操作。
例如:楊老師的行為:上課,吃飯。學(xué)生的行為:學(xué)習(xí)。
6.類:類是模子,確定對象將會擁有的特征(屬性)和行為(方法)
7.類是對象的類型。
聲明一個類:
2、 例如:int a;
數(shù)據(jù)類型 變量名;
人類 張三;
8.類是抽象的概念,僅僅是模板,比如說“人”類。
如果您需要使用本文檔,請點擊下載按鈕下載!
9.對象是一個能夠看的到,摸得著的具體實物。
10.“人”類都有:姓名\性別\年齡屬性,有說話的方法。
例如:
張三是一個屬于人類的對象,他的姓名屬性的值:張三。性別屬性的值:男 年齡屬性的值:20 張三會說話,這是方法。
11.對象可以叫做類的實例(Instance)
12.類不占內(nèi)存,對象才占內(nèi)存。
13.類型的定義:
定義類的語法:
3、
[訪問修飾符] class 類名
{
成員;
。。。。。。。。
}
類中可以包含變量的定義、方法。
注意:在我們自己些的類中,我們在些方法時,先不用加static.
例子:
定義了一個名為:Person的類,這個類僅僅是人這個對象的模板。在這個模板中規(guī)定人類對象都應(yīng)該有:姓名,性別,年齡屬性和SayHello方法。
如果您需要使用本文檔,請點擊下載按鈕下載!
4、
如何通過一個類來產(chǎn)生一個對象呢?
通過類來產(chǎn)生一個對象的過程,叫類的實例化。
14.類的實例化
A、語法:類名 實例名 = new 類名();
B、訪問類的屬性:
實例名.屬性名
C、訪問類的方法:
實例名.方法名()
接上例即為:
如果您需要使用本文檔,請點擊下載按鈕下載!
注意:只要是沒有加static的方法或者屬性,都必須先實例化,再通過實例名.方法名或者實例名.屬性來訪問。
加static的方法或?qū)傩?,可以直接通過 類名.方法名或類名.屬性名來訪問。
15.訪問修飾符:
在c#中有4個訪問修
5、飾符
public:可以在任何地方被訪問。
intemal:只能在本項目中被訪問。
如果您需要使用本文檔,請點擊下載按鈕下載!
private:只能在本類中被訪問。
preotected:只能在本類和子類中被訪問。
注意:
在類這個級別,不寫訪問修飾符默認(rèn)為intemal.
在一個類中定義變量或者方法時,沒有寫訪問修飾符,那么默認(rèn)的訪問修飾符為private.
16.屬性
l 字段用public修飾的問題.
l 屬性的定義.get;set;
l 屬性是為了保護與之相對應(yīng)的字段的.保證對字段的讀取和賦值符合要求.
l 屬性可分為:讀寫、只讀、只寫。
6、
讀寫屬性:具有g(shù)et和set方法的屬性叫做讀寫屬性。
只讀屬性:只有g(shù)et方法的屬性,這個屬性只能讀取不能寫入。
只寫屬性:只有set方法的屬性,這個屬性只能寫,不能寫讀(只寫屬性用的很少)。
允許外部訪問的變量一定要聲明為屬性。
如果您需要使用本文檔,請點擊下載按鈕下載!
注意:ctrl+R+E 給一個字段定義屬性的快捷鍵。
當(dāng)我們實例化一個類時,系統(tǒng)會自動對這個類的屬性進行初始化。
數(shù)字類型的初始化成: 0\0.0
string類型初始化成:null
char類型初始化成:\0
如果您需要使用本文檔,請點擊下載按鈕下載!
7、17.類的構(gòu)造方法
使用構(gòu)造方法的好處:
1)對多個屬性進行賦值時,不需要重復(fù)的寫實例名。
2)可以保證用戶在new一個對象的時候必須對某一個屬性進行賦值。
3)和第2類似,在創(chuàng)建對象時,對只讀屬性進行初始化。
當(dāng)我們定義好一個類之后,如果我們沒有寫構(gòu)造方法,那么系統(tǒng)會自動給我們加上一個默認(rèn)的沒有參數(shù)的構(gòu)造方法。在這個構(gòu)造方法中,什么也不做,我們也看不到。
我們可以定義一個構(gòu)造方法:
構(gòu)造方法是一個特殊的方法,他的名字和類的名字相同,并且沒有返回值。連void都可以省略不寫。我們一旦手寫一個構(gòu)造方法,系統(tǒng)原先默
8、認(rèn)給我們添加的那個無參的構(gòu)造方法就不會再為我們添加了。
例子:
類:
如果您需要使用本文檔,請點擊下載按鈕下載!
方法
構(gòu)造函數(shù)的重載:
如果您需要使用本文檔,請點擊下載按鈕下載!
l 構(gòu)造函數(shù)可以重載,也就是有多個參數(shù)不同的構(gòu)造函數(shù)。
認(rèn)識類圖:
析構(gòu)函數(shù):
如果您需要使用本文檔,請點擊下載按鈕下載!
程序結(jié)束時調(diào)用,用于垃圾清理。
要想拋一個異常,可以這樣寫
throw new Exception(”錯誤信息”);
18.params 可變參數(shù)
如果您需要使用本文
9、檔,請點擊下載按鈕下載!
19.命名空間
l namespace(命名空間),用于解決類重名問題,可以看做“類的文件夾”。
不在同一個命名空間下的類,不能被直接訪問。要想訪問別的命名空間下的類有兩種方法:
1.通過Using 引用對方的命名空間。
2.寫全稱.命名空間名.類名
20.字符串處理string
l string可以看做是char的只讀數(shù)組。char c = s[1];。例子:遍歷輸出string中的每個元素。
l C#中字符串有一個重要的特性:不可變性,字符串一旦聲明就不再可以改變。所以只能通過索引來讀取指定位置的char,不能對指定位置的char進行修改。
l 如果要對char進行修改,那么就必須創(chuàng)建一個新的字符串,用s. ToCharArray()方法得到字符串的char數(shù)組,對數(shù)組進行修改后,調(diào)用new string(char[])這個構(gòu)造函數(shù)(暫時不用細(xì)研究)來創(chuàng)建char數(shù)組的字符串。一旦字符串被創(chuàng)建,那么char數(shù)組的修改也不會造成字符串的變化。例子:將字符串中的A替換為a。
如果您需要使用本文檔,請點擊下載按鈕下載!
舉例:
(注:可編輯下載,若有不當(dāng)之處,請指正,謝謝!)