【发布时间】:2015-08-16 15:47:22
【问题描述】:
我可以从方法返回方法本地内部对象吗?
public class myClass {
public MyMethodInnerClass getMethodInnerClassObject() {
class MyMethodInnerClass {
}
MyMethodInnerClass myMethClass = new MyMethodInnerClass();
return myMethClass;
}
}
引发编译错误。 如果我无法返回我的方法本地内部类对象,那么在方法返回后如何保存它? 如何引用此对象以供将来使用?
抛出异常:
线程“main”java.lang.Error 中的异常:未解决的编译问题: MethodInnerClass 无法解析为类型
而且,我知道,方法中的局部变量存储在堆栈中,并在方法存在后立即删除。
【问题讨论】:
-
什么是编译错误?请张贴
-
你不能。不要这样设计。
MyMethodInnerClass类是本地类。它的作用域只是方法的主体。 -
我没有合适的 Java 编译器。甚至可以在方法中声明一个类吗?
-
@Dici 是,但也很少使用。
-
@PeterLawrey 好的,谢谢。对我来说真的没有意义。您不能在方法中定义方法,但方法中的类可以。哼……
标签: java class object theory scjp