Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android应用程序在尝试调用构造函数时意外停止_Java_Android - Fatal编程技术网

Java Android应用程序在尝试调用构造函数时意外停止

Java Android应用程序在尝试调用构造函数时意外停止,java,android,Java,Android,我的Android应用程序刚刚崩溃(“…意外停止”),我调试了它,以便知道它在哪里崩溃: Log.d( "myapp", "note 1" ); try { Bla1 bla = new Bla1(); } catch( Exception e ) { Log.d( "myapp", e.getMessage() ); } Log.d( "myapp", "note 2" ); “注1”是在应用程序崩溃之前打印到日志中的最后一个内容。我在Bla1的构造函数中还有一个Log.d语



我的Android应用程序刚刚崩溃(“…意外停止”),我调试了它,以便知道它在哪里崩溃:

Log.d( "myapp", "note 1" );
try
{
    Bla1 bla = new Bla1();
}
catch( Exception e )
{
    Log.d( "myapp", e.getMessage() );
}
Log.d( "myapp", "note 2" );
“注1”是在应用程序崩溃之前打印到日志中的最后一个内容。我在Bla1的构造函数中还有一个Log.d语句,显然它从未执行过。 此代码段发生在MainActivity类(扩展Activity)的方法中。Bla1是MainActivity的内部类,扩展了抽象类Bla,抽象类Bla也是MainActivity的内部类。
在logcat中,出现以下两行:

E/dalvikvm(20567):找不到从方法com.tb.myapp.MainActivity.parseFile引用的类'com.tb.myapp.MainActivity$Bla1' E/dalvikvm(20567):找不到从方法com.tb.myapp.MainActivity$MyTextWatcher.afterTextChanged引用的类'com.tb.myapp.MainActivity$Bla'

因此,无法创建这些实例,从而导致:

E/AndroidRuntime(20567):致命异常:主要
E/AndroidRuntime(20567):java.lang.NoClassDefFoundError:com.tb.myapp.main活动$Bla1

两个内部类(Bla和Bla1)的代码如下:

有人知道如何解决这个问题吗?我完全不知道。

提前感谢。

我可以通过将嵌套类复制到自己的文件中并使它们成为“普通”(非嵌套)类来解决我的问题
虽然这是可行的,但它可能不是最好的甚至不是一个好的解决方案,因为有理由让类嵌套在类中。(请参阅“为什么使用嵌套类?”)


如果有人想出了另一个解决方案,如果您让我们知道,我将不胜感激。

请包括您的logcat,请确保它包括来自崩溃的堆栈跟踪。查看logcat以查找Bla1的构造函数中抛出的异常的确切行或添加一些logcat信息。感谢您的关注。发布两个内部类的代码。考虑在实例化的内部类不扩展任何其他内容的情况下尝试一个测试用例。添加了两个内部类Bla和Bla1的代码。