Object类

Object类

 

 

方法

getClass()方法

判断两个对象是否属于同一类型

 

 

程序(存疑)

 

 

 

 

经过自己的尝试,发现直接判断s1.getClass == s2.getClass也是可以的,为什么还要分别赋值再比较?

hashCode()方法

判断两个对象是否相同

 

 

程序

 

 

如上图,很明显s1和s3返回的哈希码是相同的,两个对象相同

toString()方法

 

 

程序

 

 

 查看toString源码,发现确实是16进制哈希值,如下图

 

 

 可以自写toString方法来返回自己想要的值

 

 

如上图,自写toString方法返回值是:name:age

Test类调用了自写的toString方法,编译结果自然就成了name:age格式

equals()方法

通过比较两个对象的地址来比较两个对象是否相等,返回true or false

 

 

程序

 

 

 

注意!虽然s4和s5表面相等,但地址是不一样的!equals方法比较后返回false!世另我!

如果我就是想让他俩相等,怎么办?重写方法!

equals方法重写步骤

 

 

重写equals方法

 

 

重写后结果

如下图所示,结果为true

 

 

finalize()方法

用于垃圾文件的回收

 

 

程序

回收垃圾命令是System.gc();

重写finalize方法

 

 

回收测试

 

 

 

posted @   无关风月7707  阅读(22)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示