java - 为什么要使用一个构造函数来初始化类声明中的某些变量?

标签 java

我是 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 block 中初始化 someOther。

关于java - 为什么要使用一个构造函数来初始化类声明中的某些变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9661305/

相关文章:

java - 如何在不使用 split 和 stringtokenizer 的情况下反转 java 字符串中的单词

java - .3ds 与 JOGL?

java - 如果我在 Java 中使用不同的方法来设置和获取属性,为什么 objectMapper 会失败?

java - 使用 Android Room,我需要为嵌套对象添加 setter 和 getter 吗?

java - 任何用于从 i18n 资源包生成干净代码的库?

JavaFx:获取点击的按钮值

java - 如何从 Twitter 流获取样本并打印到屏幕

java - 将一个节点从一个文档导入到另一个文档

Java:网络设置窗口

java - 如何通过数组列表中的元素之一查找对象并打印它?