java基础—Objcet中的equals方法重写
2023-09-11 14:14:53 时间
package mytest;
public class Test1
{
public static void main(String[] args)
{
Person p1 = new Person(20);
Person p2 = new Person(30);
System.out.println(p1.equals(p2));//false
}
}
class Person
{
private int age;
Person(int age)
{
this.age = age;
}
}
重写equals方法后:
package mytest;
public class Test1
{
public static void main(String[] args)
{
Person p1 = new Person(20);
Person p2 = new Person(20);
System.out.println(p1.equals(p2));//true
}
}
class Person
{
private int age;
Person(int age)
{
this.age = age;
}
public boolean equals(Object obj)
{
if(!(obj instanceof Person))
{
throw new ClassCastException("类型错误");
}
Person p = (Person)obj;
return this.age==p.age;
}
}
Objcet 类的toString方法 默认的返回的内容是“对象所属的类名 和 对象的哈希值”
package mytest;
public class Test1
{
public static void main(String[] args)
{
Person p1 = new Person(20);
Person p2 = new Person(20);
System.out.println(p1.equals(p2));//true
System.out.println(p1.toString());//mytest.Person@37
System.out.println(p2.toString());//mytest.Person@37
}
}
class Person
{
private int age;
Person(int age)
{
this.age = age;
}
public boolean equals(Object obj)
{
if(!(obj instanceof Person))
{
throw new ClassCastException("类型错误");
}
Person p = (Person)obj;
return this.age==p.age;
}
public int hashCode()
{
return 55;
}
}
相关文章
- java虚拟机学习-JVM内存管理:深入Java内存区域与OOM(3)
- Java基础之hashCode方法具体解释
- 开源 java CMS - FreeCMS2.2 单位管理
- java基础—Calendar类方法演示
- java基础—自定义一个比较器,对TreeSet 集合中的元素按指定方法来排序(java集合六)
- java基础—List集合的常规方法操作
- 【JAVA】JSP操作数据库简单实例和mysql-connector-java-5.0.3-bin.jar项目配置方法
- Java: synchronized 同步 解决超售问题
- JAVA基础--Java枚举+位操作,巧妙判断是否设置
- SpringBoot出现 java.lang.IllegalArgumentException: Request header is too large 解决方法
- java线程中的interrupt,isInterrupt,interrupted方法
- Java学习-026-类名或方法名应用之二 -- 统计分析基础
- myeclipse 10配置jboss 7.1.1无法启动Error: Could not create the Java Virtual Machine
- 在集成使用华为移动服务的时候会出现 java.security.InvalidParameterException: url is null
- Java远程方法调用RMI
- 关于在Android或Java中精度缺失的解决方法
- Java Native方法
- java GUID生成器 产生随机GUID的方法
- Java的枚举类型使用方法详解