Java 对象中的状态更改,而不使用相同的对象引用

Java 对象中的状态更改,而不使用相同的对象引用,java,core,Java,Core,假设我们有两个A类和B类对象。我们如何在不直接使用A的情况下更改对象A的状态?这取决于您的情况。。例如,如果在列表中维护您所调用的状态,则可以创建一个具有带列表参数的构造函数的类a,然后在以后修改该列表而不直接使用实例a class A { final List<String> list; A(List<String> list) { this.list = list; } public static void main(

假设我们有两个A类和B类对象。我们如何在不直接使用A的情况下更改对象A的状态?

这取决于您的情况。。例如,如果在列表中维护您所调用的状态,则可以创建一个具有带列表参数的构造函数的类a,然后在以后修改该列表而不直接使用实例a

class A {
    final List<String> list;
    A(List<String> list) {
        this.list = list;
    }

    public static void main(String[] args) {
        List<String> state = new List<>();
        A a = new A(state);
        state.add("foo");
    }
}

当然,这样就不会通知a有关状态更改的信息。

你是什么意思?你能举个更好的例子吗?如果它是一个静态场,那么我会说反射。不确定A和B之间的关系是什么?