我想使用方法创建一个对象,但我希望它(对象+引用)在方法结束后仍然存在。代码示例:
public class start{
public static void main (String [] Args){
public void createObject(){
object1 createdObject = new object1();
}
createObject();
createdObject.doSomething();
}
}
public class object1{
//code for object 1
}
所以我的主要问题是:如何使用方法创建对象,并在方法结束后让它生效。问题是在方法结束后,引用createdObject
会弹出stack
因此我不能再使用它了。是否有可能以这种方式创建对象以供进一步使用?
答案 0 :(得分:2)
public class start{
public static void main (String [] Args){
//class level scope
object1 createdObject = null;
private void createObject(){
createdObject = new object1();
}
}
public class object1{
//code for object 1
}
注意:我没有遵循命名约定。但请在实际代码中关注它们
更新:正确的代码检查
public class Main {
public static void main(String[] args) {
new MyClass().doSomething();
}
}
class MyClass{
Object obj ;
public void doSomething(){
createObject();
}
private void createObject(){
obj = new Object();
System.out.println("Created MyClass instance");
}
}
答案 1 :(得分:0)
您的方法应返回object1而不是void,您必须在方法的末尾添加以下行:
return createdObject;