我对Java中的Constructors的所有内容都非常了解,我在下面写下这些内容以确保:
每次创建实例时初始化类中的所有变量可能会很繁琐.
在首次创建对象时完成所有设置会更简单.
由于初始化的要求非常普遍,因此Java允许对象在创建时自行初始化.通过使用构造函数执行此自动初始化.
在新操作符完成之前,构造函数在创建对象后立即自动c/d.他们没有返回类型,甚至没有返回.
阅读Herbert Schildt完整参考文献,我发现了这一段.
类的构造函数的隐式返回类型是类类型本身.初始化对象的内部状态是构造函数的工作,这样创建实例的代码将立即具有完全初始化的可用对象.
即使知道好的构造函数没有返回类型,甚至无效,我也会发现自己真的与"隐式返回类型"这个术语混淆了.
某人可以吗?
基本上,这只是一段令人困惑的文字.正如你所说的那样,没有构造函数的返回类型的概念 - 你可以认为它们有点像具有相同类型的返回类型的方法,但是:
Java(令人讨厌)让你直接声明那种方法,它不是一个构造函数:
public class Test() {
// This is a spectacularly unhelpful method name.
public Test Test() {
return new Test();
}
}
Run Code Online (Sandbox Code Playgroud)行为并不是真的相同,特别是在链接构造函数中,所有构造函数都在同一个对象上工作.
我会尽量避免将构造函数视为方法 - 有太多方法可以使它们变得特殊.