实现序列化有两种方法
1、实现parcelable接口,重写里面的方法。
2、实现<span style="font-family: Arial, Helvetica, sans-serif;">Serializable接口,什么都不用写。</span>
下面是实现<span style="font-family: Arial, Helvetica, sans-serif;">Parcelable 接口的代码</span>
import android.os.Parcel;
import android.os.Parcelable;
public class MusicBean implements Parcelable {
private long id;
private String title;
private String artist;
private String album;
private String displayName;
private long albumId;
private long duration;
private long size;
private String url;
public MusicBean() {
super();
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getArtist() {
return artist;
}
public void setArtist(String artist) {
this.artist = artist;
}
public String getAlbum() {
return album;
}
public void setAlbum(String album) {
this.album = album;
}
public String getDisplayName() {
return displayName;
}
public void setDisplayName(String displayName) {
this.displayName = displayName;
}
public long getAlbumId() {
return albumId;
}
public void setAlbumId(long albumId) {
this.albumId = albumId;
}
public long getDuration() {
return duration;
}
public void setDuration(long duration) {
this.duration = duration;
}
public long getSize() {
return size;
}
public void setSize(long size) {
this.size = size;
}
public MusicBean(long id, String title, String artist, String album,
String displayName, long albumId, long duration, long size,
String url) {
super();
this.id = id;
this.title = title;
this.artist = artist;
this.album = album;
this.displayName = displayName;
this.albumId = albumId;
this.duration = duration;
this.size = size;
this.url = url;
}
/**
* 实现了Parcelable接口需要重新写的方法
*/
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeLong(id);
dest.writeString(title);
dest.writeString(artist);
dest.writeString(album);
dest.writeString(displayName);
dest.writeLong(albumId);
dest.writeLong(duration);
dest.writeLong(size);
dest.writeString(url);
}
/**
* 必须用 public static final 修饰符 对象必须用 CREATOR
*/
public static final Parcelable.Creator<MusicBean> CREATOR = new Parcelable.Creator<MusicBean>() {
@Override
public MusicBean createFromParcel(Parcel source) {
Long id = source.readLong();
String title = source.readString();
String artist = source.readString();
String album = source.readString();
String displayName = source.readString();
Long albumId = source.readLong();
Long duration = source.readLong();
Long size = source.readLong();
String url = source.readString();
MusicBean music = new MusicBean(id, title, artist, album,
displayName, albumId, duration, size, url);
return music;
}
@Override
public MusicBean[] newArray(int size) {
return new MusicBean[size];
}
};
}
</span></strong>
</pre>