我正在创建一个库,并且我从继承自 Body 的类 Main 引用
public class Main:Body
我将 Main 添加到我的使用引用中,但是当我去启动一个实例时 - 我尝试了:
Main _main = new Main()
它强调new Main()
说它不包含带 0 个参数的构造函数。
我怎样才能正确调整它,以便我引用该类 - 我是否也需要包含继承的类?
我正在创建一个库,并且我从继承自 Body 的类 Main 引用
public class Main:Body
我将 Main 添加到我的使用引用中,但是当我去启动一个实例时 - 我尝试了:
Main _main = new Main()
它强调new Main()
说它不包含带 0 个参数的构造函数。
我怎样才能正确调整它,以便我引用该类 - 我是否也需要包含继承的类?
Main _main = new Main()
它强调 newMain()
说它不包含带 0 个参数的构造函数。
它准确地告诉你问题是什么。没有一个公共构造函数Main
接受零参数。
您需要执行以下操作之一:
public Main() { }
.Main
类上公开的不同构造函数:如果签名是,public Main(object o)
那么你会说某个对象Main _main = new Main(o)
在哪里。o
让我们看一个例子:
class Foo {
public Foo() { }
}
这个类有一个带有零参数的公共构造函数。因此,我可以通过
Foo foo = new Foo();
让我们看另一个例子:
class Bar {
public Bar(int value) { }
}
此类没有零参数的公共构造函数。因此,我不能通过
Bar bar = new Bar(); // this is not legal, there is no such constructor
// the compiler will yell
但我可以说
Bar bar = new Bar(42);
这里还有一个:
class FooBar { }
这个类确实有一个零参数的公共构造函数。这样做是因为如果您不提供任何构造函数,编译器将默认自动提供一个带有零参数的公共构造函数。因此,这是合法的:
FooBar fooBar = new FooBar();