Object类:java中类层次结构的根类 所有类都直接/间接继承自该类
构造方法:
public Object()
子类构造方法默认访问的是父类的无参构造
主要方法:
1.public int hasCode()
返回该对象的哈希码值 默认情况下 该方法会根据对象的地址来计算 不同对象的hashCode()一般不同 但是同一对象的hashCode()值肯定相同
2.pulic final Class getClass()
获取该对象的字节码文件 返回这个对象(Object)的运行时类
注意:这里的Class是描述类的一个类(在java后期的反射会用的比较多) 可以通过Class类中的一个方法(getName())来获取对象所属的类的全名称
3.public String toString()
返回该对象的字符串表示 如果打印对象的引用会默认调用toString()方法 如果它没有重写这个方法 就会调用Object类的toString()方法
注意:
这个方法默认的返回值等于:
对象.getClass().getName()+"@"+Integer.toHexString(hashCode())
相当于:类名称@哈希码的十六进制表示
其中toHexString()方法返回的是数字的十六进制表示形式
默认情况下 toString()方法返回的数据对我们来说是没有意义的 所以一般建议重写
4.public boolean equals(Object obj)
这个方法表示其他某个对象是否和这个对象“相等" 默认情况下比较的是对象的引用是否相同 没有意义 所以在开发中一般重写 用来比较属性值
知识点:
==和equals方法的异同?
同:都可以用来作比较 返回值都是boolean
异:
1.==是一个比较运算符号 既可以比较基本数据类型(此时比较的是值) 又可以比较引用数据类型 (此时比较的是地址值)
2.equals()是一个方法 只能比较引用数据类型 所有对象都继承Object中的方法 如果没有重写Object类中的equals方法 equals()方法和==号在比较引用类型数据时没有区别(此时底层依赖的是==来实现)重写后的equals方法比较的是对象的属性
相关文章
- Java基础学习笔记十四 常用API之基本类型包装类
- JAVA-初步认识-第十一章-object类-equals方法
- Java Object类及其equals方法
- Java中Object类的equals()和hashCode()方法深入解析
- JAVA中Object类 equals()方法和“==”怎样区别
- 重写Object类中的Equals方法(Java)
- 阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第2节 抽象类_16-抽象方法和抽象类的使用
- 1.9(java学习笔记)object类及toString()与equals()方法
- 黑马程序员-----Java基础-----集合工具类,jdk1.5新特性,其他对象
- java基础37 集合框架工具类Collections和数组操作工具类Arrays