C#とVisual Basicの初期化順序の違い [プログラム]
Visual Basic中学校の掲示板にて, 初期化順序について書いたら間違ったので,こちらにも書いておきます。
- C#の場合
- 派生クラスのフィールド
- 基本クラスのフィールド
- 基本クラスのコンストラクタ
- 派生クラスのコンストラクタ
- Visual Basicの場合
- 基本クラスのフィールド
- 基本クラスのコンストラクタ
- 派生クラスのフィールド
- 派生クラスのコンストラクタ
行儀の良いプログラムでは問題になりませんが,基本クラスのコンストラクタ中から仮想メソッドを呼び出すと, 動作が変わる(C#ではフィールドが初期化されているがVBでは初期化されていない)可能性があります。
あまりにも公告コメントが多いので,コメント欄を閉じます。
2010-08-18 13:52
トラックバック(0)