(C#)当您想要创建继承类时,如何使用构造函数处理基类?
我试图创建一个Dog类,继承具有构造函数的Animal基类。有什么方法可以使类Dog:Animal,但不知何故使用了Animal构造函数?我看了类似的问题,但没有得到我想要的答案(C#)当您想要创建继承类时,如何使用构造函数处理基类?,c#,inheritance,constructor,base-class,C#,Inheritance,Constructor,Base Class,我试图创建一个Dog类,继承具有构造函数的Animal基类。有什么方法可以使类Dog:Animal,但不知何故使用了Animal构造函数?我看了类似的问题,但没有得到我想要的答案 class Class1 { static void Main(string[] args) { Animal animal = new Animal("Spotty", 5, 4); animal.Print(); } } class 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
}
您应该将默认构造函数添加到
动物
,或将必要的构造函数添加到狗
:
public Dog(string name, int age) : base(name, age, 4)
{
}
您应该将默认构造函数添加到
动物
,或将必要的构造函数添加到狗
:
public Dog(string name, int age) : base(name, age, 4)
{
}
:构造函数可以使用
base
关键字调用基类的构造函数。Animal.animales
等等都是多余的(同义反复)。我认为动物除了动物性的东西之外,没有其他的腿。从你周围的网络框架中得到提示,它是Rectangle.Width
而不是Rectangle.RectangleWidth
。这种情况也一样:构造器可以使用base
关键字调用基类的构造器。Animal.animalges
等等都是多余的(同义反复)。我认为动物除了动物性的东西之外,没有其他的腿。从你周围的网络框架中得到提示,它是Rectangle.Width
而不是Rectangle.RectangleWidth
。同样的,casingI不想吹毛求疵,但是。。。为什么狗有“腿”arg?我不知道你是否理解我…我不想吹毛求疵,但是。。。为什么狗有“腿”arg?我不知道你是否理解我。。。