解决空指针异常的一些经验

Caused by: java.lang.NullPointerException
       at com.example.kongjian_10.MainActivity.writeThink(MainActivity.java:25)
       at java.lang.reflect.Method.invokeNative(Native Method) 
       at java.lang.reflect.Method.invoke(Method.java:515) 
       at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288) 
       at android.view.View.performClick(View.java:4438) 
       at android.view.View$PerformClick.run(View.java:18422) 
       at android.os.Handler.handleCallback(Handler.java:733) 
       at android.os.Handler.dispatchMessage(Handler.java:95) 
       at android.os.Looper.loop(Looper.java:136) 
       at android.app.ActivityThread.main(ActivityThread.java:5019) 
       at java.lang.reflect.Method.invokeNative(Native Method) 
       at java.lang.reflect.Method.invoke(Method.java:515) 
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779) 
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) 
       at dalvik.system.NativeStart.main(Native Method) 

它指向我MainActivity.java的第25行,报错的一行是这样:

String uname=et_main_uname.getText().toString();

我用et_main_uname.getText().toString()来赋值,但et_main_uname.getText()本来就是空的,导致点出toString这个方法报出空指针异常的错。

在此告诉大家一个找空指针异常的经验:报空指针异常的那一行点出方法的对象肯定有问题,倘若它也是用其他对象点出方法赋值的,那么就找给它赋值的对象,追根究底就能找到是哪一个对象是空了。


你可能感兴趣的:(BUG)