C# コンストラクタで仮想メンバーを呼び出す:警告 CA2214 の原因と解決策
警告の理由C# コンストラクタは、オブジェクトの初期化処理を行う特殊なメソッドです。オブジェクトが生成される際、まず基底クラスのコンストラクタが実行され、その後派生クラスのコンストラクタが実行されます。仮想メンバーは、派生クラスでオーバーライドできるメソッドです。コンストラクタから仮想メンバーを呼び出す場合、呼び出されるのは基底クラスのメソッドです。しかし、派生クラスで仮想メンバーをオーバーライドしている場合、コンストラクタ実行時点ではまだ派生クラスのコンストラクタが実行されていないため、オーバーライドされたメソッドではなく基底クラスのメソッドが呼び出されてしまいます。