发布网友 发布时间:2022-04-24 11:48
共1个回答
热心网友 时间:2023-10-11 18:22
先有一个基本的概念:抽象类不可以实例化。也就是说,如果你声明了这样一个类: public abstract class BaseClass { public int someProperty = 0; public BaseClass(int property) { this.someProperty = property; } }然后在客户端BaseClass base = new BaseClass(1);这样调用的话,编译器会报错。抽象类的构造函数只能在其子类的构造函数中调用,也就是说,不管是否是抽象类,无参构造自动调用,带参数的构造函数必须显式调用。可以这样在子类中调用父类的构造函数(使用base关键字): public class ChildClass : BaseClass { public ChildClass(int property) : base(property) { } }