Object之超级奶爸一
来源:互联网 发布:sql count1什么意思 编辑:程序博客网 时间:2024/04/28 23:44
Object类
先开心一下哦,有个好心情……
开心一笑
刚刚看到楼下有对情侣在互送巧克力
·
·
·
·
·
·
·
·
·
·
我哐一桶水下去
听说下雨天和巧克力更配哦![微笑](非原创哦!勿喷)
好了,开始了……
自我介绍
- 奴家不是祸水,所有人都要叫我老爸(Every class has Object as a superclass)
- 可是我爹呢? (Object don’t have father)
- 我住在java.lang这个家(java language)
我的特长
Object()
在源码中,未给出我(Object类)的构造函数定义,但实际上,是存在的。
toString()
该方法返回一个字符串,它的值等于(不信看源码):
getClass().getName() + ‘@’ + Integer.toHexString(hashCode())
eg:Object obj = new Object();//我能生孩子System.out.println(obj.toString());//打我,我就吐一个给你System.out.println(obj);//自动调用toString()//吐:java.lang.Object@56f0474c
再啰嗦下:
- 传言sun公司开发java的时候为了方便所有类的字符串操作而特意加入的一个方法
- 调用System.out.println()时,会自动调用对象的toString()方法
- 一般子类一般重写toString()方法
- 真啰嗦
equal(Object obj)
判断我们是否相等,调我啊
看看我肚子装的是啥(源码)
public boolean equals(Object obj) { return (this == obj);}
继续啰嗦:啦啦啦
- 我(Object 类)的 equals 方法实现对象上差别可能性最大的相等关系;即,对于任何非空引用值 x 和 y,当且仅当 x 和 y 引用同一个对象时,此方法才返回 true(x == y 具有重点内容值 true)。 (不是我想抄,人家啊译的很好)
- “==”判断两个引用是否指向同一个对象
- 举一反三:Object类中的equals()方法等价于==
eg:Object obj = new Object();//别光看Object obj2 = new Object();//动手写Object obj3 = obj;//知道吗?System.out.println(obj.equals(obj2));//falseSystem.out.println(obj.equals(obj3));//trueSystem.out.println(obj.equals(null));//false
hashCode()
返回该对象的哈希码值(整形数值)
public native int hashCode();//Object hashCode方法源码eg:Object obj = new Object();System.out.println(obj.hashCode());//886506736System.out.println(obj.hashCode());//886506736System.out.println(obj.hashCode());//886506736//.....eg:Object obj = new Object();Object obj2 = new Object();System.out.println(obj.hashCode());//593224478System.out.println(obj2.hashCode());//1704712372//哈希值不同:看上面的源码就知道了,超级奶爸hashCode是一个本地方法,返回的对象的地址值
- 同一对象多次调用hashCode()方法时,其返回的哈希码是相同的
- 两个对象是相等的,那么对这两个对象中的每个对象调用 hashCode 方法都必须生成相同的整数结果(API这么写的,我没骗你!)
- 程序猿应该意识到,为不相等的对象生成不同整数结果可以提高哈希表的性能(后续会有专门文章介绍哈希这个鬼东西)
- hashCode()相同的两个对象,不一定相等,换言之,不相等的两个对象,hashCode()返回的哈希码可能相同
给自己打鸡血的话
- 自信点,悲伤给谁看.
- 用最好的状态去迎接每一天.
- 行动,行动,行动,结果.
欢迎指正……
0 0
- Object之超级奶爸一
- Object之超级奶爸二
- Object之超级奶爸三
- 超级父类:System.Object
- 超级父类:Object类
- 超级客人之超级VIP
- PHP之 超级全局变量
- 超级客人之VIP
- 超级客人之男人
- 超级客人之女人
- “超级客人”之开篇
- js_day16--Object+Array+超级马里奥游戏+构造函数
- Java超级类:java.lang.Object类学习总结
- DudoJ框架 之“超级梦想”
- 超级计算机之父:《超人》
- pom.xml之 超级POM
- pom.xml之 超级POM
- 超级楼梯之归纳解法
- 强行删除mac中的文件
- x86 子函数调用过程分析
- [leetcode] 190. Reverse Bits 解题报告
- Android中BindService和StartService
- 【poj1838】Bananas——并查集
- Object之超级奶爸一
- [kaggle实战] Digit Recognizer -- 从KNN,LR,SVM,RF到深度学习
- Linux运维细讲第一节之文件权限
- 神经网络形象的说明
- JavaScript常用的事件
- 概率图模型笔记(9-10)——Inference-Belief Propagation
- php和js中创建数组的一个小区别
- Mina(四)
- Android弹幕效果实现