最近在琢磨c#的時候,經常發現類似這樣的例子:public class people
public class man : people
我想問一下,在實際的程式設計中,會有這樣的需要嗎?請有經驗的人說說看.
有這樣的需要的,比如people類有乙個run方法,man和woman這兩個類都是繼承自people的類,並且都重寫(override)了run這個方法(男人女人跑起步來不一樣).現在有一群人一起跑步,有男人有女人.
我們可以把這些都裝進乙個people陣列(假設為peoples).
然後foreach(people p in peoples)
由於多型性,在呼叫p.run()的時候p物件本身如果是男人就會自動呼叫男人的run方法,是女人就會呼叫女人的run方法.
還有許多地方需要用到多型性的,建議你記住,以後遇到了自然就想通了.
初始化子類, 父類的建立次數
兩個類同時繼承乙個父類,在建立兩個子類的時候,父類是被建立兩次的.測試 如下 父類public class superclass 子類1 public class subclass1 extends superclass 子類2 public class subclass2 extends supe...
QT中用父類建構函式初始化子類的成員變數
2010 12 21 20 44 派生子類會繼承基類的所有成員,除了建構函式和析構函式。也就是說子類是無法繼承父類的建構函式和析構函式的.因此,子類對於從父類繼承過來的成員變數,若不想自己寫建構函式初始化時,就只能先初始化父類中的成員變數,然後再繼承過來。如以下程式中 子類student1中的構造方...
QT中用父類建構函式初始化子類的成員變數
分類 c 技術總結 2012 02 27 17 11 998人閱讀收藏 舉報 qtstring class 2010 2010 12 21 20 44 派生子類會繼承基類的所有成員,除了建構函式和析構函式。也就是說子類是無法繼承父類的建構函式和析構函式的.因此,子類對於從父類繼承過來的成員變數,若不...