码迷,mamicode.com
首页 > 编程语言 > 详细

java.lang.NullPointerException空指针问题

时间:2015-04-05 16:07:03      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:android   java.lang.nullpointe   空指针问题   xxx已停止运行   


  对于一个Android新手而言遇见空指针问题是在所难免的。比如在调试时一开程序就出现“很抱歉!’XXX‘已停止运行!“这是空指针的一种表现。

  为什么会出现空指针?

  所谓空指针异常,是因为用空(null)去调用属性或方法。
null表示没有这个对象,既然没有这个对象,那么去调用他的属性和方法,就会报异常。
<--主要有以下几种原因:
1、使用了未初始化的变量(虽然已经声明)
2、使用了未初始化的对象(虽然已经声明)
3、使用了关键字或已存在的类名作变量对象方法或类名。
当应用程序试图在需要对象的地方使用 null 时,抛出该异常。
<--这种情况包括:
调用 null对象的实例方法。
访问或修改null对象的字段。
将null作为一个数组,获得其长度。
将null作为一个数组,访问或修改其时间片。
将null作为Throwable值抛出。
(以上几点看明白,然后再查看你的代码,肯定能找出来)

 既然知道为什么错了那就要去看错在哪里。看logcat

仔细看logcat就会发现错误了。比如

警告: Problem parsing stream - java.lang.NullPointerException
java.lang.NullPointerException
<span style="color:#ff0000;"> at com.semaphore.util.plist.PElementAdapter.get(PElementAdapter.java:25)
 at com.semaphore.util.plist.PList.get(PList.java:25)
 at com.semaphore.util.plist.PElementAdapter.getPath(PElementAdapter.java:31)</span>
 at com.semaphore.TinyLoader.findLibs(TinyLoader.java:76)
 at com.semaphore.TinyLoader.main(TinyLoader.java:37)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
 at com.exe4j.runtime.WinLauncher.main(Unknown Source)
从以上的第3、4、5行中很容易看出来PElementAdapter.java中的25、31行;PList中的第25行 等存在错误。具体错误自己找。

java.lang.NullPointerException空指针问题

标签:android   java.lang.nullpointe   空指针问题   xxx已停止运行   

原文地址:http://blog.csdn.net/agonie201218/article/details/44887883

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!