Android studio报错Attempt to invoke virtual method on a null object reference

报错Attempt to invoke virtual method on a null object reference帮帮忙,我真看不出来哪有问题


  String name;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        name = LitePal.findLast(MedicineBean.class).getName();

img

run之后报错

img

LitePal.findLast(MedicineBean.class)
提出去,加个null判断。

或者把 name = LitePal.findLast(MedicineBean.class).getName();
放在onStart()中去

这个错误通常表示您正在尝试调用一个对象的方法,但该对象为null。这可能是由于以下原因引起的:

  1. 对象未被正确初始化:如果您未在代码中正确初始化某个对象,那么它将为null,因此在调用其方法时会出现该错误。

  2. 对象已被释放:如果您在某个对象被释放后尝试调用其方法,则会出现此错误。

  3. 对象的生命周期已结束:如果您在某个对象的生命周期已经结束后尝试调用其方法,则会出现此错误。

为了解决此问题,您可以执行以下操作:

  1. 确保正确初始化对象:在使用对象之前,请确保您已正确初始化该对象。

  2. 检查对象是否已被释放:如果您尝试使用已被释放的对象,则会出现此错误。请确保对象在使用之前已被正确释放。

  3. 确保对象的生命周期未结束:如果您尝试使用已结束生命周期的对象,则会出现此错误。请确保您在正确的时间使用对象。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^