初学者对象引用问题

Kar*_*ari 0 java

如果我在主类中实例化一个对象,请说:

SomeObject aRef = new SomeObject();
Run Code Online (Sandbox Code Playgroud)

然后我从主类中实例化另一个对象,说:

AnotherObject xRef = new AnotherObject();
Run Code Online (Sandbox Code Playgroud)

AnotherObject的实例如何使用aRef引用来访问SomeObject中的方法?(使用SomeObject的相同实例)

Bri*_*new 6

为什么不实例化AnotherObject引用原文SomeObject

例如

SomeObject obj = new SomeObject();
AnotherObject obj2 = new AnotherObject(obj);
Run Code Online (Sandbox Code Playgroud)

并且AnotherObject将如下所示:

// final used to avoid misreferencing variables and enforcing immutability
private final SomeObject obj;

public AnotherObject(final SomeObject obj) {
   this.obj = obj;
}
Run Code Online (Sandbox Code Playgroud)

所以AnotherObject引用了之前创建的SomeObject.然后它可以使用此引用来调用方法.如果原始对象不在范围之外AnotherObject,则在内部创建AnotherObject并以此方式强制执行封装.