1.Object类:所有类的根类。是不断抽取而来的,具备所有对象都具有的共性内容。其中的方法,任何对象都可以调用。继承而来的。

equals()方法:

  Object类的equals源码:比较两个对象是否相同

  public boolean equals(Object obj)

  {

    return this==obj;//比较两个对象是否相同

  }

  子类可以重写equals方法,来实现自己的对象比较,比如比较年龄等。

  public boolean equals(Object obj)//重写的时候,参数必须是Object类型,必须跟Object类里的方法一样才是重写。

  {

    if(!obj instanceof Person)

    {

      throw new ClassCastException("类型错误");//此处抛异常比直接返回false要好,也可以直接抛出Runtime异常。

    }

    Person p=Person(obj);//必须强制类型转换

    return this.age==p.age;//当两个对象的年龄相同时,返回true

  }

  一般都会覆盖此方法,根据对象的特有内容建立对象是否相同的依据。

hashCode()方法:  返回该对象的哈希码值。

  public int hashCode()

  {

    return age;

  }

一般要重写该方法,依据对象的不同来建立对象的哈希码。一般对象的地址是用该方法计算出来的。

相同的对象必须具有相同的哈希码。所以一般都要重写equals方法及hashCode方法

对象相同要保证地址相同,即哈希码相同,另外还要确保内容相同。

hashCode对应对象的地址,equals来判断对象的内容,这是以后重写的依据。

getClass()方法:返回对象的运行时类。即返回当前对象的Class对象,字节码文件对象

toString()方法:

返回对象的字符串表示。默认的是对象的名字+@+hashcode码,所以子类都需要重写该方法,建立自己的字符串表示形式。

所有的对象一般都要重写 equals方法,hashCode方法,toString方法。

Object对象的更多相关文章

  1. JavaScript Object对象

    目录 1. 介绍:阐述 Object 对象. 2. 构造函数:介绍 Object 对象的构造函数. 3. 实例属性:介绍 Object 对象的实例属性:prototype.constructor等等. ...

  2. 原生JS:Object对象详细参考

    Object对象详细参考 本文参考MDN做的详细整理,方便大家参考MDN JavaScript原生提供一个Object对象(注意起首的O是大写),所有其他对象都继承自这个对象. 构造函数: Objec ...

  3. Intent.putExtra()传递Object对象或者ArrayList<Object> (转)

    Intent传递基本类型相信大家都十分熟悉,如何传递Object对象或者ArrayList<Object>对象呢? 可以通过: (1)public Intent putExtra (Str ...

  4. Object对象类

    Object对象类是所有类的祖先,他是默认自动继承的 Java为什么要做一个对象类呢?对象类的目的就是归一了类型,他就是把所有的类所有的对象归纳成为 Object类型.因为对象他认为对象应该拥有一些什 ...

  5. php如何遍历多维的stdClass Object 对象,php的转换成数组的函数只能转换外面一丛数组

    php如何遍历多维的stdClass Object 对象,php的转换成数组的函数只能转换外面一丛数组 (2012-09-10 19:58:49) 标签: 杂谈 分类: 网页基础知识 php如何遍历多 ...

  6. new一个Object对象占用多少内存?

    Java的自动内存管理机制省却了很多编码工作,大大地提高了Java的生产力,而且JVM的性能也越来越好,特别是G1的出现,改善了垃圾回收中stop the world的状况. 也许很多人都没有考虑过这 ...

  7. 读匿名object对象的属性值

    读匿名object对象的属性值 1.定义读object对象值的功能方法 public static class StaticClass { public static string ValueByKe ...

  8. buffer cache中,各个object对象占用的buffer blocks

    buffer cache中,各个object对象占用的buffer blocks: COLUMN OBJECT_NAME FORMAT A40 COLUMN NUMBER_OF_BLOCKS FORM ...

  9. js object 对象 属性和方法的使用

    //object 对象 属性和方法的使用 var person = new Object(); person.name="张海"; person.age="; perso ...

  10. javascript ES5 Object对象

    原文:http://javascript.ruanyifeng.com/stdlib/object.html 目录 概述 Object对象的方法 Object() Object.keys(),Obje ...

随机推荐

  1. C# Monads的实现(一)

    了解Haskell语言的朋友都知道它是一门纯函数式编程,输出结果只跟输入参数相关,这导致Haskell不能有输入输出函数,因为不同的环境下,输入相同,但输出可能有所不同.Haskell语言中,变量的值 ...

  2. openwrt 路由器变砖后修复方法

    https://wiki.openwrt.org/doc/howto/generic.debrick 变砖后需根据类型进行修复,主要有以下四种: (1)if only something on the ...

  3. 国外vps品牌vultr宣布100%可用,宕机加倍补偿

    全球知名的vps品牌vultr最近发狠招了,宣布所有vps服务器保证100%上线可用.如果出现宕机故障,提供加倍补偿方案.没有一家vps敢声称自己的产品100%可用,行业标准99.99%上线率已经是非 ...

  4. 修改textField的placeholder的字体和颜色

    textField.placeholder = @"username is in here!"; [textField setValue:[UIColor redColor] fo ...

  5. jms的初步认识

    (内容取自:http://itindex.net/detail/49721-jms-jms-%E5%BA%94%E7%94%A8) 什么是JMS? JMS即java消息服务, JMS通过消息的形式来降 ...

  6. C++ 类的继承、虚拟继承、隐藏、占用空间

    主函数: #include <iostream> #include "test.h" #include "testfuc.h" using name ...

  7. 一个神奇SQL引发的故障【转】

    前几天一个客户数据库主实例告警,诊断过程中发现是由一个慢SQL导致的数据库故障,而在排查逐步深入之后却发现这个现象的不可思议. 问题描述 2016年12日09日,大概9点26分左右,一个客户的生产库主 ...

  8. 单片机上使用TEA加密通信(转)

    源:单片机上使用TEA加密通信 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境: 主机:WIN7 开发环境:MDK4.72 单片机:STM32 说 ...

  9. 根据NSString字符串长度自动改变UILabel的frame

    相信大家都遇到过这种需求.如果一个不慎,容易做成这个模样: 话不多说,上代码. 1.首先,设置UILabel的相关属性 UILabel *tmpLabel = [[UILabel alloc] ini ...

  10. nginx(ubuntu)设置别名访问目录

    1 2 3 4 5 6 7 8 9 10 11 12 13 location /phpmyadmin/ { alias  /data/phpmyadmin/; index  index.html in ...