Java 如何访问未存储在变量中的对象
我有一个方法,我将一个新创建的对象传递给它Java 如何访问未存储在变量中的对象,java,Java,我有一个方法,我将一个新创建的对象传递给它 foo(new WebObject()); 如何访问WebObject以在另一个对象中使用?换句话说,新创建的对象引用到哪里去了?将其存储在变量中 WebObject whatever = new WebObject(); foo(whatever); bar(whatever); 这取决于你的意思——如果你想说你想在函数调用之后使用它,那么你想做类似的事情 WebObject wObj = new WebObject(); foo (wObj);
foo(new WebObject());
如何访问WebObject以在另一个对象中使用?换句话说,新创建的对象引用到哪里去了?将其存储在变量中
WebObject whatever = new WebObject();
foo(whatever);
bar(whatever);
这取决于你的意思——如果你想说你想在函数调用之后使用它,那么你想做类似的事情
WebObject wObj = new WebObject();
foo (wObj);
WebObject nObj = wObj;
但是,如果您的意思是希望在foo(WebObject)方法中使用对象,那么您需要做的是,在函数中,按照
foo (WebObject obj)
{
WebObject local = obj;
}
当
user2357112
发布时,您可以将新对象分配给局部变量,并通过几种方法传递它
WebObject instance= new WebObject();
foo(instance);
foo2(instance);
System.out.println(instance);
但是如果您正在查找其他内容,则可以将其分配给支持类
public class WebObjectKeeper{
private static WebObject instance=null;
public static void setWebObject(WebObject obj){
this.instance=obj;
}
public static WebObject getWebObject(){
return instance;
}
}
然后在代码中使用它,如:
public void myMethod(){
WebObjectKeeper.setWebObjcet(new WebObject());
foo(WebObjectKeeper.getWebObject());
foo2();
}
public void foo2(){
WebObjectKeeper.getWebObject().executeThisMethod();
System.out.println("Object = " + WebObjectKeeper.getWebObject());
}
你需要一个对象的引用。如果它没有存储在变量中…你就有点运气不好了。有一个引用会让你的生活变得更加轻松。这个引用将进入
foo()
方法。你要得到它的唯一方法是,如果foo()
将它存储在某个地方,并且你可以访问该变量。是否有一些公共对象池,我可以将其从中提取出来?@user758114-没有,至少没有你想的方式。