Reading C#高級編程(第四版)……………………………………………………………………………………………………………………………………………………………
類:繼承單實現,多接口,默認從object派生
結構:繼承多接口,默認從object.ValueType派生
類--
抽象類:abstract class SomeClass{}
密封類:sealed class SomeClass{}
接口--
接口只能包含方法、屬性、索引器、事件的聲明,不允許包含運算符重載
方法--
虛方法:使用virtual關鍵,必須被顯式的override(這點有好處,在C++中沒有,經常搞不清楚作者的意圖是什麼,virtual甚至可以不寫,這就更讓人迷惑了)
隱藏方法:
public new int myMethod() { (隱藏在C++中是隱式的,對於初學者要記憶規則)
}
抽象方法:(等價於純虛方法)
public abstract decimal calHeartBeat();
密封方法:(能控制是否被重寫)
public sealed decimal calHeartBeat();
修飾符--
內部類可以使用protected關鍵字 (很好,C++子類想訪問父類的內部類很不方便)
增加了internal:對於該程序集才能訪問 (有現實意義,很多方法是不希望別人直接通過繼承訪問,但又能讓自己繼承使用,C++中只好採用代理模式)
有extern關鍵字:僅在靜態[DllImport]啓用,表示成員用另一種語言實現
protected internal:具備這兩個字段的特點,是或關係,不是與