博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android调用远程Service的参数和返回值都需要实现Parcelable接口
阅读量:4632 次
发布时间:2019-06-09

本文共 2245 字,大约阅读时间需要 7 分钟。

import android.os.Parcel;

import android.os.Parcelable;

public class Person implements Parcelable{

  private Integer id;
  private String name;
  private String pass;
  public Person() {
    super();
  }

  public Person(Integer id, String name, String pass) {

    super();
    this.id = id;
    this.name = name;
    this.pass = pass;
  }

  public Integer getId() {

    return id;
  }

  public void setId(Integer id) {

    this.id = id;
  }

  public String getName() {

    return name;
  }

  public void setName(String name) {

    this.name = name;
  }

  public String getPass() {

    return pass;
  }

  public void setPass(String pass) {

    this.pass = pass;
  }

  @Override

  public int hashCode() {
    final int prime = 31;
    int result = 1;
    result = prime * result +((name == null) ? 0 : name.hashCode());
    result = prime * result +((pass == null) ? 0 : pass.hashCode());
    return result;
  }
  @Override
  public boolean equals(Object o) {
    if(this == o){
      return true;
    }
    if(o == null){
      return false;
    }
    if(getClass() != o.getClass()){
      return false;
    }
    Person other = (Person) o;
    if(name == null){
      if(other.name != null){
        return false;
      }
    }else if(!name.equals(other.name)){
      return false;
    }
    if(pass == null){
      if(other.pass != null){
        return false;
      }
    }else if(!pass.equals(other.pass)){
      return false;
    }
    return true;
  }
  //实现Parcelable接口必须实现的方法
  @Override
  public int describeContents() {
    return 0;
  }

  //实现Parcelable接口必须实现的方法

  @Override
  public void writeToParcel(Parcel dest, int flags) {
    //把该对象所包含的数据写到Parcel
    dest.writeInt(id);
    dest.writeString(name);
    dest.writeString(pass);
  }
  //添加一个静态成员,名为CREATOR。该对象实现了Parcelable.Creator接口
  public static final Parcelable.Creator<Person> CREATOR
        = new Parcelable.Creator<Person>() {
    @Override
    public Person[] newArray(int size) {
      return new Person[size];
    }
    @Override
    public Person createFromParcel(Parcel source) {
      // 从Parcel中读取数据,返回Person对象
      return new Person(source.readInt(),
          source.readString(), source.readString());
    }
  };

}

转载于:https://www.cnblogs.com/jiww/p/5604640.html

你可能感兴趣的文章
git
查看>>
特殊变量的处理(一)onehot&dummy
查看>>
打开文件对话框 保存一个txt文件 比较简单用的时候省的搜索了
查看>>
Linux下MySQL5.7.18二进制包安装(无默认配置文件my_default.cnf)
查看>>
mssql手工注入心的
查看>>
文件重命名的几种写法
查看>>
Nginx配置文件及模块解析
查看>>
redis主从配置
查看>>
终端clear清屏的实现
查看>>
实验四1
查看>>
关于 vs 2010 combobox控件 卡死的问题
查看>>
Linux 嵌入式启动以及优化
查看>>
整理了几种字符串截取方法
查看>>
解释一下python中的关系运算符
查看>>
【模板】组合数学
查看>>
data,bdata,idata,pdata,xdata,code存储类型与存储区
查看>>
JS知识整理之 Call&Apply方法
查看>>
MySql 和 PostGres 对照表
查看>>
sqlmap使用
查看>>
路由转发
查看>>