最近發現c#功底還不太好,正好最近也在看WebCast課程,順便整理出聽課筆記,以便複習之用,我想於己於人都有好處吧!
首先,解釋一下名詞,OOP:object-oriented programming;
執行個體化的幾種方式:
1、new關鍵字: Test mytest=new Test();
2、FileStream fs=File.Create("data.inp");//在沒有可訪問的建構函式時,可採用特定的方法,此處為Create方法來返回類執行個體的一個 引用!
3、使用反射(Reflection):
何為反射?通俗地講反射是用於呈現應用程式的內部,從而瞭解程式的運行原理;反射的應用:外掛程式;
對象和對象引用:
形象化地理解:對象在記憶體中佔有一塊領地,是一個擁有內部的實體,而對象引用則類似於一個指向對象的指標:
Customer c;//申明了Customer類的一個對象引用c;
c=new Customer();//執行個體化一個對象,在記憶體堆中分配一定空間;
物件變數儲存的僅僅是對象的一個引用;
常量類似於隱式的靜態類型,可以直接使用類來引用它;
常量VS唯讀欄位:
readonly關鍵字比const靈活很多,允許把一個欄位設定為常量,但可以執行一些運算,以確定它的初始值。其規則是可以在建構函式中給制度欄位賦值,但不能在其他地方賦值,唯讀欄位還可以是一個執行個體欄位,而不是靜態欄位,類的每個執行個體可以有不同的值。與const欄位不同,如果要把唯讀欄位設定為靜態,就必須顯式聲明,如:
public static readonly double Price=3.72;
另外唯讀欄位可以為參考型別;
使用命名空間的好處:
1、增強可讀性;
2、減少類名衝突,便於管理;
匯入“別名”(alias):
過度使用using會引發以下兩種情況:
1、幹擾可讀性;
2、增加命名衝突可能性;
使用alias是一種折中的方式,如:
using BT=TeamX。BusinessTier;
.......
.......
BT.Customer C=new BT.Custome();
組件:一個或多個類的集合體,在.NET中被稱之為:程式集(assembly)
組件和存放的物理位置有關,和具體的命名空間無關。此處注意與JAVA中package的區別;