java – 在eclipse中构建错误

前端之家收集整理的这篇文章主要介绍了java – 在eclipse中构建错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我是Eclipse和Java的新手.

我想知道以下是Eclipses编译器或我的安装中的错误.

我在公共类中定义了一个公共类来定义服务方法的返回类型.

public class ServiceThing {
    public class ReturnType {...}
    public ReturnType serviceMethod (...) {...}
    ...
}

在我调用服务方法的类中,我实例化一个ReturnType来保存一个默认消息:

ReturnType returnType = new ReturnType(...);

尝试构建这个时,我收到以下错误

建筑工作区:
构建期间发生错误.
在项目“XXXX.android”上运行构建器“Java Builder”的错误.
java.lang.ArrayIndexOutOfBoundsException

保存失败:
保存失败;
显示java.lang.NullPointerException

我发现所需的语法是:

ServiceThing serviceThing = ...; 
ReturnType returnType = serviceThing.new ReturnType(...);

但是编译器不应该生成nullpointerException.

最佳答案
通过使ReturnType成为一个公共静态类,您将摆脱对父实例和您的实例的引用

ReturnType returnType = new ReturnType(...);

将按预期工作.

如果没有静态修饰符,则子类的实例包含对其父对象的隐式引用.这就是为什么在这种情况下需要ServiceThing实例来创建ReturnType实例的原因.

原文链接:https://www.f2er.com/java/437898.html

猜你在找的Java相关文章