【发布时间】:2019-11-23 20:38:17
【问题描述】:
我正在尝试创建一个 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
}
【问题讨论】:
-
Using Constructors (C# Programming Guide): 构造函数可以使用
base关键字来调用基类的构造函数。 -
Animal.animalLegs等等是相当多余的(tautology)。我希望动物除了动物腿之外没有其他种类的腿。从您周围的 NET 框架中获取提示,它是Rectangle.Width而不是Rectangle.RectangleWidth。那个外壳也一样
标签: c# inheritance constructor base-class