.NET學習(2) 類,組和名稱空間 (3)面向對象程序設計

看了Modern C#系列課程2--類,組和名稱空間的筆記,主講 俞暉

 

類實例化的3種方法:

1 Test mytest = new Test();

2 FileStream fs = File.Create(“data.inp”);

3 使用反射

 

     Q希望能夠對new, virtual, override等修飾符方面講解一下,因爲我是從Java轉過來的,這一點跟Java不大一樣,估計很多人和我一樣會困惑

     A:  在繼承的時候,子類可以override父類的方法。如果我們聲明瞭一個方法,這個方法的名稱和父類一樣,但我們並不想應用多態,那我們可以認爲這個方法是子類本身的一個方法。但是此方法的名稱與父類相同,我們就用new來標識一下,說明這個方法是跟父類跟繼承關係無關的。只是子類裏面的一個方法而已。在父類中定義virtual方法,就是希望子類去覆寫它,重新定義子類的實現。這樣子類如果有自己的實現方法,那麼我們就使用override來覆寫。

Sealed修飾的類不能被繼承。

 

Override 多態,虛方法,抽象方法重寫,在多個子類中實現同名同參數同返回值的方法。Overload 重載,在一個類中實現多個同名不同參數的方法,返回值可同可不同。

虛方法可以有實現體,用virtual 關鍵字指定。如果虛方法沒有實現體,可以看作抽象方法。有抽象方法的類一定是抽象類。抽象用abstract關鍵字指定。

接口全部是public的,而且只是定義,沒有實現。用interface關鍵字指定,然後用類繼承接口,實現。

類中static的屬性和方法可以直接用類名.方法調用 。

看了Modern C#系列課程3--面向對象程序設計的筆記,主講 俞暉

發佈了52 篇原創文章 · 獲贊 0 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章