报错情况如下
08-31 14:57:45.007 31250-31250/com.klb.frame E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.klb.frame, PID: 31250
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.klb.frame/com.klb.frame.ui.activity.fula_home.repayment.NewEmailImportBillActivity}: java.lang.InstantiationException: java.lang.Class<com.klb.frame.ui.activity.fula_home.repayment.NewEmailImportBillActivity> cannot be instantiated
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3092)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3302)
at android.app.ActivityThread.-wrap12(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1891)
at android.os.Handler.dispatchMessage(Handler.java:108)
at android.os.Looper.loop(Looper.java:166)
at android.app.ActivityThread.main(ActivityThread.java:7425)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
Caused by: java.lang.InstantiationException: java.lang.Class<com.klb.frame.ui.activity.fula_home.repayment.NewEmailImportBillActivity> cannot be instantiated
at java.lang.Class.newInstance(Native Method)
at android.app.Instrumentation.newActivity(Instrumentation.java:1178)
at com.qiyukf.unicorn.i.a.newActivity(Unknown Source:2)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3082)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3302)
at android.app.ActivityThread.-wrap12(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1891)
at android.os.Handler.dispatchMessage(Handler.java:108)
at android.os.Looper.loop(Looper.java:166)
at android.app.ActivityThread.main(ActivityThread.java:7425)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
activity无法被实例化,解决方式如下:
1.当前activity是否在AndroidManifest.xml注册过——当前Activity已注册,未解决;
2.查看包名当前activity的包名与AndroidManifest.xml中的包名是否一致(尽管我没有重新引入包但我还是检查了一下)——未修改包名,未解决;
3.上面两种情况均未解决,决定重写时又觉得不甘心,所以检查报错activity代码,发现在activity中加了一个abstract,修改后解决问题
出现的原因在于写代码的时候不专心,使用快捷键直接引入方法时没注意看引入的内容导致定义成了抽象类,记录此问题,防止下次再犯。
题外话:IDE给我们提供了极大地便利,但是写代码时的专心也是必不可少的,毕竟多一份专心就少浪费一份时间。