Java 常用对象-Object类
发布日期:2022-04-02 18:15:42
浏览次数:9
分类:博客文章
本文共 1265 字,大约阅读时间需要 4 分钟。
2017-10-31 23:42:08
Object类:类 Object
是类层次结构的根类。每个类都使用 Object
作为超类。所有对象(包括数组)都实现这个类的方法。
或者说,每个类都直接或者间接继承了Object类。
常用方法:
- hashCode(),返回该对象的哈希码值。支持此方法是为了提高哈希表(例如
java.util.Hashtable
提供的哈希表)的性能。[可自动生成]
实际上,由 Object 类定义的 hashCode 方法确实会针对不同的对象返回不同的整数。(这一般是通过将该对象的内部地址转换成一个整数来实现的,但是 JavaTM 编程语言不需要这种实现技巧)
哈希值是根据哈希算法计算出来的值,这个值和地址值有关,但不是地址值。
- getClass(),返回此
Object
的运行时类。返回的Class
对象是由所表示类的static synchronized
方法锁定的对象。 - toString(),返回该对象的字符串表示。通常,
toString
方法会返回一个“以文本方式表示”此对象的字符串。结果应是一个简明但易于读懂的信息表达式。建议所有子类都重写此方法。[可自动生成]
Object
类的 toString
方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@
”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
- equals(Object obj):指示其他某个对象是否与此对象“相等”。[可自动生成]
Object
类的 equals 方法实现对象上差别可能性最大的相等关系。
注意:当此方法被重写时,通常有必要重写 hashCode 方法,以维护 hashCode 方法的常规协定,该协定声明相等对象必须具有相等的哈希码。
默认情况下,比较的是地址值。比较地址值一般意义不大,所以需要重写该方法。
boolean equals(Object obj){ if(this==obj) return true; if(!(obj instanceof Student)) return false; Student s =(Student) obj; return this.name.equals(obj.name)&&this.age==age; }
- finalized():当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。一般不使用,因为无法确认何时能够被收回。
- clone():创建并返回此对象的一个副本。Object 类本身不实现接口 Cloneable,所以在类为 Object 的对象上调用 clone 方法将会导致在运行时抛出异常。
public class Student implements Cloneable才能使用clone()方法
转载地址:https://www.cnblogs.com/hyserendipity/p/7764588.html 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
关注你微信了!
[***.104.42.241]2024年04月20日 07时31分59秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
阿里云上的docker安装
2019-04-27
重新安装SCCM 2012 client,解决Windows10 1909在线更新问题
2019-04-27
使用jasmine.createSpyObj具有依赖关系的Angular服务进行单元测试
2019-04-27
MAYA 绑定 批量 关联属性 (手指FK 2 SK)
2019-04-27
c语言格式化浮点数多余的0
2019-04-27
Linux快速创建文件命令
2019-04-27
Linux下挂载U盘
2019-04-27
ubtunu开机黑屏无桌面解决方法
2019-04-27
Linux开发_退格符的花样用法
2019-04-27
Linux开发_判断程序是否以管理员权限运行(root/sudo)
2019-04-27
Windows核心编程_实现QQ好友来消息时任务栏头像闪烁功能
2019-04-27
CMake构建_增加编译选项(debug&&release)
2019-04-27
Cmake构建_指定gcc/g++版本
2019-04-27
Cmake构建_设置全局编译选项
2019-04-27
Cmake构建_设置debug与release不同名字
2019-04-27
Cmake构建_设置debug与release输出路径
2019-04-27
Cmake构建_选择debug与release的库
2019-04-27
Http响应码含义
2019-04-27
Windows核心编程_修改U盘图标
2019-04-27
迅雷:下载时提示“文件创建失败,无法继续下载”的解决办法
2019-04-27