繁体   English   中英

(C#) 当你想创建一个继承类时,你如何处理带有构造函数的基类?

[英](C#) How do you deal with a Base class with a constructor, when you want to make an inheriting class?

我正在尝试创建一个 Dog 类,继承具有构造函数的 Animal 基类。 有什么办法可以让 Dog : Animal 类,但以某种方式使用 Animal 构造函数吗? 我查看了类似的问题,但没有得到我正在寻找的答案。

class Class1
{       
   static void Main(string[] args)
   {
        Animal animal = new Animal("Spotty", 5, 4);
        animal.Print();
   }
}

class Animal
{
    public string animalName;
    public int animalAge;
    public int animalLegs;
    public Animal(string name, int age, int legs)
    {
        animalName = name;
        animalAge = age;
        animalLegs = legs;       
    }       

    public void Print()
    {
        Console.WriteLine("Name: " +animalName);
        Console.WriteLine("Age: "+ animalAge);
        Console.WriteLine("Number of Legs: " +animalLegs);
    }
}

class Dog : Animal
{
    //This wont work; there will be an error
}

您应该向Animal添加一个默认构造函数,或者向Dog添加必要的构造函数:

public Dog(string name, int age) : base(name, age, 4)
{
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM