Pha*_*e01 7 java nullpointerexception inspection android-studio
我有很多这样的电话:
(ListView) getView().findViewById(R.id.main_list_view);
(TextView) getView().findViewById(R.id.items_no);
....
Run Code Online (Sandbox Code Playgroud)
和AndroidStudio告诉我他们可能会采取以下措施NullPointerException:
方法调用
getView().findViewById(R.id.main_list_view)可能会产生java.lang.NullPointerException较少的...(Ctrl + F1)此检查分析方法控制和数据流,以报告始终为真或假的可能条件,静态证明其值为常量的表达式,以及可能导致违约性合同违规的情况.
变量,方法参数和返回值标记为
@Nullable或被@NotNull视为可为空(或不为空),并在分析期间用于检查可空性合同,例如报告可能的NullPointerException错误.可以使用
@Contract注释定义更复杂的合同,例如:
@Contract("_, null -> null")- 如果第二个参数为null@Contract("_, null -> null; _, !null -> !null"),则方法返回null - 如果第二个参数为null ,则方法返回null,否则返回null
@Contract("true -> fail")- 一种典型的assertFalse方法,如果传递给它,则抛出异常可以将检查配置为使用自定义
@Nullable@NotNull注释(默认情况下将使用annotations.jar中的注释)
幸运的是,有作品,但是我可以对这段代码进行改进吗?
这是 android.support.v7.app.AppCompatActivity 中的一个已知问题,它已在 v24 中修复。
https://code.google.com/p/android/issues/detail?id=203345
android.support.v4.app.FragmentActivity 或 android.app.Activity 不会有任何问题
| 归档时间: |
|
| 查看次数: |
8619 次 |
| 最近记录: |