Serializable的基本使用:
新建對(duì)象: 使用serializable的接口
public class 類名 implements Serializable
{
private static final long serializableVersionUID=9092013023902193012930L;
.....
}
調(diào)用:
//序列化過(guò)程:
類 新建一個(gè)對(duì)象;
ObjectOutputStream os=new ObjectOutputStream(new FileOutputStream(path));
os.writeObject(對(duì)象);
os.close();
//反序列化
ObjectInputStream in=new ObjectInputStream(new FileInputStream(path));
對(duì)象=in.readObject();
in.close();
在android中,Serializable可以用于Intent的對(duì)象傳遞。
public class User implements Serializable
{
private static final long serializableVersionUID=328379124090932959045094095L;
public int age;
public String name;
public int id;
}
private Button button;
private User ololee=new User();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button=(Button)findViewById(R.id.button);
//ololee->init....balabala
button.setOnClickListerner(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
intent.putExtra("user",ololee);
startActivity(intent);
}
});
}
Intent傳遞數(shù)據(jù)有四種方式:
0x01:常用類型數(shù)據(jù)使用Intent.putExtra();使用相應(yīng)的getIntent().getExtra()方法得到數(shù)據(jù)
0x02:Bundle傳遞
0x03:Serializable傳遞
0x04:Parcelable傳遞