Object对象是java中对象的始祖,其有一些方法是经常需要我们来改写的:

toString方法

该方法是Object的方法,Object的这的方法返回的是对象的文件结构加上对象的hashcode,但是有些类对这个方法进行的改写返回的是对应的string的描述

比如,String类就是这样的,改写了从Object继承来的这个方法

一般情况下,我们都需要自己改写这个方法,public String toString(),获得有关对象的详细描述。

equals方法的改写

  “==”比较的是对象的属性值,Object.equals()方法一般比较的是不是同一个对象,也就是比较两个对象的引用值是不是相等。这与我们的常理不服,我们更多的是比较两个对象的属性只是不是相同,这是需要们改写一下equals的方法,String本身已经改写

 public boolean equals(Object obj)
{
Person p = null;
if(obj instanceof Percon)
p = (Person) obj;
if(this.name.equals(p.name))
{
return ture;//这个意思说只要名字相同就是同一个人,包括双胞胎
}
return false;
}

hashCode方法

  采用底层操作系统的hash算法返回对象的hash值,java认为如果equals的值为true,那么hashCode必须相同,如果改写的quals方法,也要改写hashCode

常见的改写方法可以参见javacore

(4)Object对象的几个常用方法的更多相关文章

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

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

  2. 详解JavaScript中的Object对象

    Object是在javascript中一个被我们经常使用的类型,而且JS中的所有对象都是继承自Object对象的.虽说我们平时只是简单地使用了Object对象来存储数据,并没有使用到太多其他功能,但是 ...

  3. js 中object对象的操作

    n = object对象 for(var p in n){ console.log(p);// 取得是key值 console.log(n[p]);//取得是value值 } 继之前js中数组的常用方 ...

  4. Javascript中的Object对象

    Object是在javascript中一个被我们经常使用的类型,而且JS中的所有对象都是继承自Object对象的.虽说我们平时只是简单地使用了Object对象来存储数据,并没有使用到太多其他功能,但是 ...

  5. Java:Object对象小记

    Java:Object对象小记 对 Java 中的 Object 对象,做一个微不足道的小小小小记 Object 的常用方法有哪些 clone() 方法:用于创建并返回当前对象的一份拷贝: 在Java ...

  6. JavaScript Object对象

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

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

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

  8. Object对象类

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

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

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

随机推荐

  1. Oak Seeds 网站项目回顾

    项目是一个教育类网站,先给出网站网址:http://www.oakseeds.cn/ Oak Seeds原本的名字叫做American School,后来更给为Oak Seeds,意为橡木子.网站是为 ...

  2. 部署LNMP架构Blog博客平台 ---惟净

    部署环境:VM虚拟机 操作系统:CentOS-6.8-x64 IP地址:192.168.31.91Mysql数据库版本:5.6.34 Cmake软件包版本:3.5.2Nginx软件包版本:1.10.2 ...

  3. react native 运行项目下载gradle慢的解决办法

    react-native run-android 慢 React-native run-Android中需要下载https://services.gradle.org/distributions/gr ...

  4. Python自然语言处理学习笔记之性别识别

    从今天起开始写自然语言处理的实践用法,今天学了文本分类,并没用什么创新的东西,只是把学到的知识点复习一下 性别识别(根据给定的名字确定性别) 第一步是创建一个特征提取函数(feature extrac ...

  5. 矢量切片(Vector tile)

    说明:本月的主要工作都是围绕制作矢量切片这一个核心问题进行的,所以2月的主题就以这个问题为主,目前分支出来的一些内容主要包括了TMS(Tile map service),OpenLayers3中的Pr ...

  6. springmvc注解式事务手动回滚

    Spring的AOP事务管理默认是针对unchecked exception回滚(运行期异常,Runtime Exception),如果希望手动控制事务的回滚,可以通过 TransactionAspe ...

  7. Java 程序测试_循环语句中的break和continue

    package test; public class Loop_Statement { public static void main(String [] args) { String[] newba ...

  8. CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)

    0x00 CREELINKS平台简介     CREELINKS(创e联)是由大信科技有限公司研发,集合软硬件.操作系统.数据云储存.开发工具于一体,用于物联网产品的设计.研发与生产的平台.    平 ...

  9. [Hadoop] - 自定义Mapreduce InputFormat&OutputFormat

    在MR程序的开发过程中,经常会遇到输入数据不是HDFS或者数据输出目的地不是HDFS的,MapReduce的设计已经考虑到这种情况,它为我们提供了两个组建,只需要我们自定义适合的InputFormat ...

  10. Win7配置IIS7

    1.安装 控制面板\程序\程序和功能\打开或关闭Windows功能  选择Internet信息服务勾选相应的内容 2.打开iis信息服务管理器  点击菜单\运行(WIN+R) 输入iis 如图所示 可 ...