一、Vitual方法和普通方法區別爲:繼承其的子類能夠用override/new在重載此方法,也能夠不重載其方法,有方法體(能夠寫語句),override修飾則調用子類方法
二、abstract類中抽象方法無方法體(只有名稱)、普通方法(靜態方法,無修飾的方法,Virtual方法)能夠有方法體,其餘類的基類,繼承其的子類必須實現全部抽象方法
三、abstract類沒法實例化,能夠繼承接口
四、抽象方法是隱式的虛方法,能夠被基類修飾爲virtual方法
五、抽象方法只能在抽象類中,能夠被override,不能夠用new
七、Override方法必須和其父類方法具備相同的簽名(函數名、返回值、參數列、訪問權限 如:public)
八、Override方法沒法重寫非virtual方法和static修飾的方法
九、Override方法不能用此修飾符:new static virtual abstract
十、sealed類(密封類)沒法被繼承 sealed方法必須和override連起來修飾(如:sealed protected override void F(){}),實現sealed方法類的父類必須實現了此方法(存在),密封方法其自己沒法再任何派生類中被重寫
十一、new 若是父類方法裏面是new 子類必須用new修飾,若是子類是private修飾,則直接調用父類的new方法,不然調用子類new方法,子類new方法能夠重寫父類virtual方法,new方法,override方法,不能夠寫抽象方法
十二、只有override方法才能夠用sealed修飾 //只有重寫方法才能密封ide