Android java.lang.ClassNotFoundException

ClassNotFound原因较多,这里列一个特殊case:

抽象类A,因项目关系,code clean后,已无抽象方法(但依然带着abstract关键字)

没深究过java语法,不过没有抽象方法却声明为抽象类,至少该有个警告把?而这里Eclipse(ADT)/Android studio均无任何提示,所以怀疑是JDK的bug)。

Main activity继承自A。然后启动Main activity即报ClassNotFound。

log里面会有奇怪的:

11-19 16:51:21.301 W/dalvikvm(31571): Unable to resolve superclass of LxxxA; (207)
11-19 16:51:21.301 W/dalvikvm(31571): Link of class 'LxxxA;' failed
11-19 16:51:21.301 W/dalvikvm(31571): Unable to resolve superclass of LxxxMain (1447)
11-19 16:51:21.301 W/dalvikvm(31571): Link of class 'LxxxMain;' failed

修改方法很简单,把那个无用的abstract关键字去掉就好了。

记录一下。