c# 衍生类和基类的构造顺序
生活随笔
收集整理的這篇文章主要介紹了
c# 衍生类和基类的构造顺序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
public class MyDeriveClass:MyBaseClass{public MyDeriveClass():base(){}int derive_int = 1;}public class MyBaseClass{public MyBaseClass(){}int base_int = 1;} derive_int = 1; base_int = 1; MyBaseClass();
var cls = new MyDeriveClass();
調用順序如下:
MyDeriveClass();
考慮MyBaseClass()中有一個屬性A為abstract
在MyBaseClass()中可以直接操作這個屬性A,
只需要(也應該如此設計)DeriveClass做好override
你需要注意的問題是:
在Field的聲明處初始化 和 在構造函數中初始化 的順序是不一樣的。
在Field的聲明處初始化 總是比 構造函數要早執行,且早于基類的Field的聲明處初始化和基類的構造函數。
?
轉載于:https://www.cnblogs.com/norsd/p/6359272.html
總結
以上是生活随笔為你收集整理的c# 衍生类和基类的构造顺序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Atitit各种SDM 软件开发过程SD
- 下一篇: 极米 H6 Pro 4K 旗舰投影仪上架