Android开发 - 处理 null 和 预防空指针异常(NullPointerException) 的一些经验

Android开发 - 处理 null 和 预防空指针异常(NullPointerException) 的一些经验,第1张

在实际编码中总是会遇到 空指针异常 ,本文总结了一些处理空指针的个人经验。

尽早的检查,尽早的失败。

比如: 通过intent传参到新的目标 activity,而且一定需要这个参数,那么在新的目标activity中 onCreate方法中 判断中这个参数,如果null,直接抛出空指针异常让程序崩溃。取代在使用该参数时进行检查,这样能更早的发现问题。或者在 一个普通的方法中,一个 参数必须不能为null ,那么我们在这个方法的第一行就做出判断,如果参数为null,抛出空指针异常。

1.不要在Set中使用null

2.不要把null作为map的键值。

3.尽可能的尽早检查,如果为 null 不执行或者 结束本方法

4.遇到必须的参数,比如通过intent传参到新的目标 activity,而且一定需要这个参数,那么在新的目标activity中判断是否有参数

5.判断字符串是否空

6.对字符串比较时,如果和常量进行比较,把常量放在前面,比如:

7.将某个对象 toString时,比如:

8.使用注解 @NonNull 和 @Nullable 配合AndroidStudio 帮你检查你是否没有检查可能为null的对象,或者你是否做了多余的检查。

9.我们引用Guava来帮忙检查 null 的情况,我们使用 checkNotNull 方法来替代写 if( obj == null) throw new NullPointExcetion(),示例:

Guava是什么:

http://ifeve.com/google-guava/

1. 在Android Studio中,可以使用Logcat来查看空指针异常。

2. 在Android Studio中,可以使用Android Monitor来查看空指针异常。

3. 在Android Studio中,可以使用Android Device Monitor来查看空指针异常。

4. 在Android Studio中,可以使用Android Debug Bridge(ADB)来查看空指针异常。

5. 在Android Studio中,可以使用Android Studio Profiler来查看空指针异常。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9390874.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存