在現有類(基類、父類)上建立新類(派生類、子類)的處理過程稱為繼承。派生類能自動獲得基類的除了構造函數和析構函數以外的所有成員,可以在派生類中添加新的屬性和方法擴展其功能。 繼承的特性: 可傳遞性:C從B派生,B從A派生,那麼C不僅繼承B也繼承A。 單一性:只能從一個基類中繼承,不能同時繼承多個基類 ...
在現有類(基類、父類)上建立新類(派生類、子類)的處理過程稱為繼承。派生類能自動獲得基類的除了構造函數和析構函數以外的所有成員,可以在派生類中添加新的屬性和方法擴展其功能。
繼承的特性:
可傳遞性:C從B派生,B從A派生,那麼C不僅繼承B也繼承A。
單一性:只能從一個基類中繼承,不能同時繼承多個基類繼承中的訪問修飾符base和this關鍵字基類的構造函數和析構函數不能被繼承的。但可以使用關鍵字base來繼承基類的構造函數。
C#中的base關鍵字代表基類,使用base關鍵字可以調用基類的構造函數、屬性和方法。
namespace InheritanceApplication { class Shape { public void setWidth(int w) { width = w; } public void setHeight(int h) { height = h; } protected int width; protected int height; } // 派生類 class Rectangle: Shape { public int getArea() { return (width * height); } } class RectangleTester { static void Main(string[] args) { Rectangle Rect = new Rectangle(); Rect.setWidth(5); Rect.setHeight(7); // 列印對象的面積 Console.WriteLine("總面積: {0}", Rect.getArea()); Console.ReadKey(); } } }