13.Object类
:是java所有类的基类。
构造方法:可以直接实例化
Object();
1.toString();返回对象的字符串表示形式:让在控制台的打印的可以看懂
class Person { String name; int age; @Override public String toString() { return "Person{" + "name='" + name + '\'' + ", age=" + age + '}'; } } ////等于下列字符串 getClass().getName() + '@' + Integer.toHexString(hashCode())
2.equals(Object obj) 指示一些其他对象是否等于此
public boolean equals(Object obj) { return (this == obj); } //Object 类下面的方法比较的是两个对象的地址。不看内容 //String 类下面的equals比较的是内容,重写了Object的eqalus方法 package com.homework; import java.util.Objects; class Person { private String name; private int age; //有参构造 public Person(String name, int age) { this.name = name; this.age = age; } //重写equals方法 @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Person person = (Person) o; return age == person.age && Objects.equals(name, person.name); } //无论何时重写equals方法,通常需要重写`hashCode`方法,以便维护hashCode`方法的通用合同,该方法规定相等的对象必须具有相等的哈希码 @Override public int hashCode() { return Objects.hash(name, age); } //tostring @Override public String toString() { return "Person{" + "name='" + name + '\'' + ", age=" + age + '}'; } //getset public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } } public class Demo1 { public static void main(String[] args) { Person person1 = new Person("小白" ,18); Person person2 = new Person("小白" ,18); System.out.println(person1.equals(person2));//true } }
3.int hashCode(); 在2中得到了实现
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!