LOGCAT报错如下
大概流程是这样子的
我有这样的一个类
package com.example.DBUtil;
import java.io.Serializable;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class CourseDBHelper extends SQLiteOpenHelper implements Serializable{
public CourseDBHelper(Context context, String name,int version) {
super(context, name, null, version);
// TODO Auto-generated constructor stub
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
}
我在主activity初始化的时候建立这个类
//建立数据库
courseHelp = new CourseDBHelper(this, "curriculum.db3", 1);
然后在某个监听器里面这样写
add.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(MainActivity.this,AddCourseAC.class);
Bundle bundle = new Bundle();
bundle.putSerializable("courseDBHelper", courseHelp);
intent.putExtras(bundle);
startActivity(intent);
MainActivity.this.finish();
}
});
我百度了说要序列化过的object才能用BUNDLE传递 所以我如此这般地做
然后在另一个activity接收这个类
courseHelp = (CourseDBHelper) getIntent().getSerializableExtra("courseDBHelper");
courseDB = courseHelp.getReadableDatabase();
courseDBUtil = new DBUtil(courseDB);
百度了一下报错的意思 说什么那个类里面的那些自定义成员变量也要序列化 问题是 我那个类里面没有自定义的成员变量啊 究竟为什么呢 求大神
序列化一般都是保存数据类之类的,你现在想保存逻辑类,然后反序列化再用这个类的函数,方法,这是不可行的,本身想法就有问题,你要在另一个activity再用这个类,只能自己重新实例化<spanstyle="font-family:Verdana,sans-serif,宋体;font-size:14px;line-height:22px;background-color:#FFFFFF;">SQLiteOpenHelper序列化了吗?<spanstyle="font-family:Verdana,sans-serif,宋体;font-size:14px;line-height:22px;background-color:#FFFFFF;">SQLiteOpenHelper的引用类型的Feilds(<spanstyle="font-family:Verdana,sans-serif,宋体;font-size:14px;line-height:22px;background-color:#FFFFFF;">不好意思我net过来的不知道java里叫啥,就是字段)序列化了么。最好检查一下。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。