|NO.Z.00002|——————————|BigDataEnd|——|Java&核心类库.V02|——|Java.v02|Object类概念|构造方法|
一、Object类的概念和构造方法
### --- 基本概念
~~~ ——> java.lang.Object类是Java语言中类层次结构的根类,也就是说任何一个类都是该类的直接或者间接子类。
~~~ ——> 如果定义一个Java类时没有使用extends关键字声明其父类,则其父类为 java.lang.Object 类。
~~~ ——> Object类定义了“对象”的基本行为, 被子类默认继承。
二、常用的方法
方法声明 | 功能介绍 |
Object() | 使用无参方式构造对象 |
boolean equals(Objectobj) |
用于判断调用对象是否与参数对象相等。
该方法默认比较两个对象的地址是否相等,
与 == 运算符的结果一致若希望比较两个对象的内容,则需要重写该方法。
若该方法被重写后,则应该重写hashCode方法来保证结果的一致性。
|
int hashCode() |
用于获取调用对象的哈希码值(内存地址的编号)。
若两个对象调用equals方法相等,则各自调用该方法的结果必须相同
若两个调用对象equals方法不相等,则各自调用该方法的结果应该不相同。
为了使得该方法与equals方法保持一致,需要重写该方法。
|
String toString() |
用于获取调用对象的字符串形式
该方法默认返回的字符串为:包名.类名@哈希码值的十六进制
为了返回更有意义的数据,需要重写该方法
使用print或println打印引用或字符串拼接引用都会自动调用该方法
|
Class<> getClass() | 用于返回调用对象执行时的Class实例,反射机制使用 |
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通