13.Object类
2022/8/6 6:52:43
本文主要是介绍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中得到了实现
这篇关于13.Object类的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-08-15一步到位:指针与const关键字
- 2022-08-15M5Stack使用GUIslice库2 使用buider画UI并添加控件事件
- 2022-08-15XX Open Cup, Grand Prix of Tokyo D,L
- 2022-08-15Error when reading /var/lib/rabbitmq/.erlang.cookie: eacces
- 2022-08-15LyScript 插件官方API调用案例
- 2022-08-15【luogu CF1710C】XOR Triangle(数位DP)
- 2022-08-15CF939F Cutlet
- 2022-08-15Class类
- 2022-08-15初识C语言第十天
- 2022-08-15LibreCAD常用命令