gpt4 book ai didi

java - 如何在初始化复杂java对象时初始化它的所有子非原始字段?

转载 作者:行者123 更新时间:2023-12-02 00:47:29 25 4
gpt4 key购买 nike

我的数据模型

Class A
fieldA1 : primitive dataType
fieldA2 : primitive dataType
fieldA3 : NON-primitive dataType (Class B)
fieldB1 : primitive dataType
fieldB2 : primitive dataType
fieldB3 : NON-primitive dataType (Class C)
fieldC1 : primitive dataType
fieldC2 : primitive dataType
fieldC3 : NON-primitive dataType (Class D)
fieldD1 : primitive dataType
fieldD2 : primitive dataType

我的复杂对象是(A 类)

我的问题是
当我尝试初始化我的复杂java对象
第一层中的所有子非原始字段都将为 null
例如

A a = new A();

a.fieldA3 -> null
a.fieldA3.fieldB3 -> cant access it (parent is null object)
a.fieldA3.fieldB3.fieldC3 -> cant access it (parent is null object)

任何方式/模式让我能够
当初始化一个复杂的java对象时所有子非原始字段也将被初始化?

例如

A a = new A();

a.fieldA3 -> new B();
a.fieldA3.fieldB3 -> new C();
a.fieldA3.fieldB3.fieldC3 -> new D();

最佳答案

为什么不做一些像这样简单的事情呢?

public class A {
B fieldA3;
public A() {
fieldA3 = new B();
}
}

public class B {
C fieldB3;
public B() {
fieldB3 = new C();
}
}

关于java - 如何在初始化复杂java对象时初始化它的所有子非原始字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17083145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com