我是Java的新手,但是有C ++的经验。我遇到了一些我不理解的代码:
public class SomeClass {
private SomeOtherClass someOther = new SomeOtherClass();
private AThirdClass thirdClass;
SomeClass() {
this.thirdClass = new AThirdClass();
}
}
为什么当只有一个构造函数时,您会在初始化中初始化someOther并在构造函数中初始化thirdClass吗?
最佳答案
以下是您可能希望这样做的原因之一。
public class SomeClass {
private SomeOtherClass someOther = new SomeOtherClass();
private AThirdClass thirdClass;
SomeClass( int x ) {
this.thirdClass = new AThirdClass( x );
}
}
但这仅说明了为什么要在构造函数中初始化thirdClass。我不知为何要解释为什么您要在init块中初始化someOther。