Object对象
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对象的更多相关文章
- JavaScript Object对象
		
目录 1. 介绍:阐述 Object 对象. 2. 构造函数:介绍 Object 对象的构造函数. 3. 实例属性:介绍 Object 对象的实例属性:prototype.constructor等等. ...
 - 原生JS:Object对象详细参考
		
Object对象详细参考 本文参考MDN做的详细整理,方便大家参考MDN JavaScript原生提供一个Object对象(注意起首的O是大写),所有其他对象都继承自这个对象. 构造函数: Objec ...
 - Intent.putExtra()传递Object对象或者ArrayList<Object>    (转)
		
Intent传递基本类型相信大家都十分熟悉,如何传递Object对象或者ArrayList<Object>对象呢? 可以通过: (1)public Intent putExtra (Str ...
 - Object对象类
		
Object对象类是所有类的祖先,他是默认自动继承的 Java为什么要做一个对象类呢?对象类的目的就是归一了类型,他就是把所有的类所有的对象归纳成为 Object类型.因为对象他认为对象应该拥有一些什 ...
 - php如何遍历多维的stdClass Object 对象,php的转换成数组的函数只能转换外面一丛数组
		
php如何遍历多维的stdClass Object 对象,php的转换成数组的函数只能转换外面一丛数组 (2012-09-10 19:58:49) 标签: 杂谈 分类: 网页基础知识 php如何遍历多 ...
 - new一个Object对象占用多少内存?
		
Java的自动内存管理机制省却了很多编码工作,大大地提高了Java的生产力,而且JVM的性能也越来越好,特别是G1的出现,改善了垃圾回收中stop the world的状况. 也许很多人都没有考虑过这 ...
 - 读匿名object对象的属性值
		
读匿名object对象的属性值 1.定义读object对象值的功能方法 public static class StaticClass { public static string ValueByKe ...
 - buffer cache中,各个object对象占用的buffer blocks
		
buffer cache中,各个object对象占用的buffer blocks: COLUMN OBJECT_NAME FORMAT A40 COLUMN NUMBER_OF_BLOCKS FORM ...
 - js object 对象 属性和方法的使用
		
//object 对象 属性和方法的使用 var person = new Object(); person.name="张海"; person.age="; perso ...
 - javascript ES5 Object对象
		
原文:http://javascript.ruanyifeng.com/stdlib/object.html 目录 概述 Object对象的方法 Object() Object.keys(),Obje ...
 
随机推荐
- hdu_4283_You Are the One(区间DP)
			
题目链接:hdu_4283_You Are the One 题意: 有n个人,每个人有个屌丝值,如果果他是第K个上场,不开心指数就为(K-1)*D,然后有个小黑屋,可以调整他们的出场顺序,现在让你调整 ...
 - hdu_5813_Elegant Construction(xjb搞)
			
题目链接:hdu_5813_Elegant Construction 题意: 给你n个点,每个点要可以到达ai个点,可以直接可以间接,不能有环,问是否可行,如果可行就任选一种方式连接,并输出连接的边数 ...
 - 分库分表下uuid的生成
			
分库分表时一般有必要自定义生成uuid,大企业一般有自己的uuid生成服务,其他它的实现很简单.我们以订单号为例,组成可以是"业务标识号+年月日+当日自增数字格式化",如00012 ...
 - 在线用户管理--ESFramework 4.0 进阶(05)
			
无论我们采用何种通信框架来构建我们的分布式系统,在服务端进行用户管理都是非常重要的一个环节.然而用户管理是否应该隶属于通信框架了?这个并不一定,通常来说,用户管理是与具体应用紧密相关的,应该是由应用解 ...
 - JAVA中计算两个时间相差多少 天,时,分,秒
			
1: import java.util.Date; 2: 3: public class ShowTimeInterval{ 4: public void ShowTimeInterval(Date ...
 - BatteryWarning 电池预警
			
MTK BatteryWarning 在mediatek/external/batterywarning下,会编译生成一个可执行文件:batterywraning main()函数中,会间断读取 /s ...
 - MMS model
 - 关于oracle数据库(3)
			
show user ; 查看当前用户的名称 select * from tab; 查看当前用户有哪些表 删除用户 drop user jky cascade; //cascade; 意思是级联操作 ...
 - DataTable Javascript Link not working on 2nd page
			
$(document).ready(function () { var otable = $('#tbl-resources').dataTable( { bJQueryUI: false, bFil ...
 - k近邻算法
			
k 近邻算法是一种基本分类与回归方法.我现在只是想讨论分类问题中的k近邻法.k近邻算法的输入为实例的特征向量,对应于特征空间的点,输出的为实例的类别.k邻近法假设给定一个训练数据集,其中实例类别已定. ...