一次空指针的成功解决-菜鸟的乐趣

本文分享了在Android开发中遇到的空指针异常问题及解决过程,详细介绍了如何通过初始化对象避免异常,并强调了非基本类型数据传递时实现Serializable接口的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本人最近用android做一个类似管理系统的应用,其中在主Activity中申明了一个设定时间日期的类Date_Set:

public class Myhotel extends Activity {
    /** Called when the activity is first created. */

..........
     public Date_set date_in,date_out;

..........
      @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

}

}

本人建立了一个可返回数据的Activity类,用date_in,date_out接受此Acticvity返回的数据,但出现了空指针异常:

下面的提示信息显示:
04-20 23:53:05.020: E/AndroidRuntime(564): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=2, data=Intent { (has extras) }} to activity {com.data/com.data.Myhotel}: java.lang.NullPointerExceptiononActivityResult(int requestCode, int resultCode, Intent data)
 我是在onActivityResult(int requestCode, int resultCode, Intent data)()函数中对date_in,date_out赋值的,最后找了半天错误才发现错误,原来没有对date_in,date_out进行初始化造成的,我就在onCreate()函数中添加了一下语句:
date_in=new Date_set();
date_out=new Date_set();
然后运行成功通过,非常兴奋哦!
这个错误并不是那么难以发现,我写着个的目的是想告诉和我一样的菜×们一种查找问题的思路而已,同时也记录下我的android学习的成长之路。
同时我也发现如果要在Activity中传递的不是基本类型,那么这个类型必须可以序列化,即实现Serializable类,我的Date_set就是实现了这个类的。

转载于:https://my.oschina.net/haquanwen/blog/54574

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值