Object四个常用方法

Object类—所有类的父类:

常用的四个方法:
1.getClass():返回对象执行的class实例
2.toString():将对象返回为字符串形式
3.hashCode():用来比较两个对象是否相等
4.equals():用来比较两个对象是否相等

覆盖Object中的toString()方法:

格式:public String toString(){
		return str;//返回值为字符串
	}

设计依据:
1如果输出对象的时候,想要看哪些属性的值,就可以将属性拼接在return后面
2.要保证拼接后的结果为String类型
3.拼接的格式自定义

覆盖hashCode()方法:
hashCode():返回该对象的哈希码值
注意:hashCode():方法自动调用,无需手动调用
如果有toString()方法时,hashCode()不会自动调用
覆盖hashCode()方法的设计依据
1.尽量使用到对象的属性
2.保证最终的返回值类型为int类型,return后面的结果为int类型
3.返回结果自定义

Java对于hashCode()和equals()方法的对象的比较:

如果两个对象相同,那么他们的hashCode值一定相同
如果两个对象的hashCode值相同,两个对象并不一定相同

覆盖equals()方法的意义:
改变父类对象的比较规则(父类对象的比较规则为 “==” )
this:当前对象

public boolean equals(Object obj){
	if(obj == null){
	     return false;
	}
	if(this == obj){
	     return true;
	}
	if(obj instanceof Class){
	     //将obj转化为Class类型(自己定义的实体类)
	     Class c = (Class)obj;
	     //自定义比较规则
	     boolean flag = this.num.equals(Class.obj);
	     return flag;
	}
	return false;
}
```java
此代码中,Class为自己定义的实体类,num表示自己想要比较的东西
可对比equals的原码进行理解






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值