c#中派生类的构造方法
- 在子类中调用父类的默认构造函数(无参)(会先调用父类的,然后是子类的), 在这里 :base()可以直接不写,因为默认会调用父类中的默认构造函数。
调用有参数的构造函数,同样是会先调用父类的,然后是子类的,但是,这里:base()不能省略了。
class Enemy
{
int x;
public Enemy()
{Console.WriteLine("这是无参数enemy");
}
public Enemy (int x)
{this.x = x;
Console.WriteLine("这是有参数enemy");
}
}class Boss : Enemy
{
int y;
public Boss()
{Console.WriteLine("这是无参数boss");
}
public Boss (int x,int y):base(x)
{this.y = y;
Console.WriteLine("这是有参数boss");
}
}class Program
{
static void Main(string[] args)
{Boss boss1 = new Boss();
Console.WriteLine("--------------");
Boss boss2 = new Boss(1, 2);
Console.ReadKey();
}
}
还没有评论,来说两句吧...