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

Android调用远程Service的参数和返回值都需要实现Parcelable接口相关推荐

  1. C#调用存储过程带输出参数或返回值分类(转)

    C#调用存储过程带输出参数或返回值 分类: Asp.net MSSQL2014-05-26 14:02 330人阅读 评论(0) 收藏 举报 [csharp] view plaincopyprint? ...

  2. python3_函数_形参调用方式 / 不定长参数 / 函数返回值 / 变量作用域 / 匿名函数 / 递归调用 / 函数式编程 / 高阶函数 / gobal和nonlocal关键字 / 内置函数

    1.形参的调用方式 1. 位置参数调用 2. 关键词参数调用 原则: 关键词参数调用不能写在位置参数调用的前边 def test1(name, age):print("name:" ...

  3. php+方法返回多个参数,PHP中调用外部程序,及其参数与返回值

    用了一下午,终于弄明白了如何在PHP代码中调用外部程序. 在PHP中调用外部程序主要有两个函数,system和exec. system的原型为string system(string command ...

  4. API函数MessageBox的参数与返回值

    Win32汇编函数的参数,参数类型,返回值都是一个dword类型(4字节) 返回值永远放在EAX中,如超过4个字节则返回一个数据的指针(指向返回值存放的缓冲区地址) .data titleS db ' ...

  5. java分布式对象——远程方法中的参数和返回值+远程对象激活

    [0]README 1)本文文字描述转自 core java volume 2, 旨在学习 java分布式对象--远程方法中的参数和返回值+远程对象激活 的相关知识: [1]远程方法中的参数和返回值 ...

  6. 【C# 调用 Go 语言】0x2 参数、返回值与类型转换

    在上篇文章[C# 调用 Go 语言]0x1 Hello Golang  中,我们将 Golang 源码编译为动态链接库(dll),用 C# 调用 Golang 导出的方法并成功的看到了控制台的输出.本 ...

  7. Java学习Day06——函数,参数,返回值,分类,多级调用

    JavaSE基础 多听一遍不如多练一遍,多练一遍不如总结一遍,希望各位在学习的过程中,要多听,多写,多练,每天将自己所学汇总一遍,查缺补漏,成就更好的自己 一.函数 1.1概述 函数又叫方法,是完成指 ...

  8. ARM 编程:C语言与汇编间互相调用,参数与返回值的传递方式详解

    汇编基础: linux AT&T格式汇编简单框架 函数调用时的规则如下: 父函数与子函数间的入口参数依次通过R0R3这4个寄存器传递.父函数在调用子函数前先将参数存入到R0R3中,若只有一个参 ...

  9. java输出结果校验_2. Bean Validation声明式校验方法的参数、返回值

    你必须非常努力,才能干起来毫不费力.本文已被 https://www.yourbatman.cn 收录,里面一并有Spring技术栈.MyBatis.JVM.中间件等小而美的专栏供以免费学习. ✍前言 ...

最新文章

  1. 缓冲区溢出基本C程序的控制台和Win32版本
  2. 高性能网络编程1----accept建立连接
  3. 分布式事物(同样适用于dubbo事务等分布式事务)
  4. 手机连接投影机的步骤_投影机安装过程详解
  5. Hadoop下水环境模拟集群运算模式
  6. RocketMQ入门到入土(五)消息持久化存储源码解析
  7. 旺旺上显示已上传服务器,在服务器上排除问题的头五分钟 | 旺旺知识库
  8. 【Android学习】三种布局include /、merge /、ViewStub /
  9. MapKit框架使用
  10. Openstack Nova network
  11. 中文数字阿拉伯数字相互转换(Java版本)
  12. uniapp大转盘抽奖
  13. TP6 WhereIn排序问题
  14. PCIe5.0的Add-in-Card(AIC)金手指layout建议(三)
  15. Python与MySQL交互中Python提交添加数据操作但数据库并未添加问题解决方案
  16. 短链接如何快速生成?短链接的应用场景有哪些?
  17. 养老e周刊创始人孙黎:16000字讲解「互联网+养老」需要面对的难题
  18. Linux攻关之基础模块四 命令初识
  19. 重装系统大师计算机硬件不兼容,电脑重装系统能解决哪些问题?电脑重装系统后常见问题解决方法...
  20. mysql+odbc驱动安装_MySQL的ODBC驱动下载及安装及ODBC配置

热门文章

  1. JSP 学习笔记 3
  2. Oracle数据库联邦,使用联邦数据库将oracle表迁移到DB2(9.7)中的脚本说明
  3. autowired java_Java 基础之Autowired 是否是自动注入
  4. mysql优化 top_Top 20+ MySQL Best Practices【sql优化】
  5. 优秀的Java程序员应具备哪些编程技术?
  6. Java程序员技术培训需要培训哪些?
  7. linux设置nexus开机自启动_在linux中使用nexus搭建maven私服
  8. 用父节点表示法表示一棵树
  9. Java基础学习总结(13)——流IO
  10. windows系统下node、npm的安装和卸载