基本コンストラクターの実装を理解しようとしています。この状況を考えてみましょう 私が基本クラス Sport を持っている場合
public class Sport
{
public int Id { get; set; }
public string Name { get; set; }
public Sport()
{
Console.WriteLine("Sport object is just created");
}
public Sport(int id, string name)
{
Console.WriteLine("Sport object with two params created");
}
}
これで、Sport クラスを継承するバスケットボール クラスができました。バスケットボール オブジェクトの初期化で、2 つのパラメータを持つ 2 番目のコンストラクタを使用したいと考えています。
public class Basketball : Sport
{
public Basketball : base ( ???? )
{
?????
}
}
最初に、プライベート フィールド int _Id と string _Name を使用し、それらをコンストラクター呼び出しで使用することを考えていました
public Basketball : base ( int _Id, string _Name )
{
Id = _Id;
Name = _Name;
}
しかし、それでは継承を使用する意味がありません。この例で説明してください。
更新しまし た皆さん、ありがとうございます。私はこのようなコードを使用していますが、問題ありません。
public Basketball(int id, string name) : base (id, name)
{
Id = id;
Name = name;
}
念のため、この行 public Basketball(int id, string name) : base (id, name)
では変数 id、name を宣言しています。これは、元の変数が大文字の変数であるためであり、base (id, name) のパラメーターとして使用して、base コンストラクターをヒットします。
みんなありがとう。とても助かりました/