Object类
Posted huochemeiyouhuo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Object类相关的知识,希望对你有一定的参考价值。
- Object类是Java中所有类的根父类, Java中的类要么直接继承Object, 要么间接继承Object类
- Java中类的继承是可传递的, Object类中定义的方法,所有的类都能继承到
Modifier and Type | Method and Description |
---|---|
protected Object | clone() 对象克隆.很少使用 (在堆中创建一个一模一样的对象) |
boolean | equals(Object obj) 用于判断两个对象的内容是否一样 |
protected void | finalize() 当对象被垃圾回收器回收时,会执行 对象的finalize()方法.但是垃圾回收器在什么时候回收这个对象不确定, 即这个方法的执行时间不确定,一般不用 |
Class<?> | getClass() 返回对象的运行时类对象, 可以简单的理解为返回对象的类的字节码文件 |
int | hashCode() 返回对象的哈希码 |
void | notify() 在线程中用于唤醒等待中的 线程 |
void | notifyAll() |
String | toString()把对象转换为字符串 |
- toString()
作用是把对象转换为字符串
应用场景: System.out.println( obj ) 打印obj对象时, 会调用对象的toString()方法
? 当打印对象时,想显示对象的各个字段值, 需要重写toString()
- equals()
使用关系 运算符 == 判断两个变量是否相等, 如果两个变量相等,说明这两个变量引用堆中的同一个对象
如果想要判断堆中两个对象的内容(即各个成员变量的值)是否一样 ,需要重写equals()方法, 根据哈希约定, 如果两个对象的equals()相等, 那么这两个对象的hashCode()也应该相等,即在重写equals()方法的同时,也要重写hashCode()
以上是关于Object类的主要内容,如果未能解决你的问题,请参考以下文章