2019独角兽企业重金招聘Python工程师标准>>>

面向对象的核心思想:“找合适的对象,做适合的事情”。

合适的对象:

1. 自己描述类,自己创建对象。

2. sun已经描述了好多常用的类,可以使用这些类创建对象。

API(Application Program Interface)

sun定义的那么多类的终极父类是Object。Object描述的是所有类的通用属性与方法。

1.1 toString方法

toString() 返回对象的描述信息 java.lang.Object@de6ced 类名@哈希码值的十六进制形式。

直接输入一个对象的时候,会调用对象的toString方法。

练习:自定义一个Person类,打印该对象的描述信息,要求描述信息为:姓名 — 年龄

问题:调用p的toString方法时,打印出来的信息是类名+内存地址值。不符合要求。根据我们之前学的继承,假如父类的指定的功能不能满足要求,那么子类可以复写父类的功能函数。那么该对象再调用toString()方法时,则会调用子类复写的toString方法。

编程习惯:开发者要对自定义的类重写toString(),对对象做详细的说明

1.1 equals方法

equals() 返回的是比较的结果 如果相等返回true,否则false,比较的是对象的内存地址值。

问题:比较两个人是否是同一个人,根据两个人的名字判断。

问题:如果根据名字去作为判断两个人是否是同一个时,明显p与p1是同一个人,但是程序输入却不是同一个人。不符合我们现实生活的要求。

解决: 根据我们学的继承中的函数复写,如果父类的函数不能满足我们目前的要求,那么就可以在子类把该功能复写,达到复合我们的要求。

编程习惯:开发者要对自定义的类重写equals(),使得比较两个对象的时候比较对象的属性是否相等,而不是内存地址。

1.1 hashCode方法

hashCode() 返回该对象的哈希码值: 采用操作系统底层实现的哈希算法。 同一个对象的哈希码值是唯一的。

java规定如果两个对象equals返回true,那么这两个对象的hashCode码必须一致。

转载于:https://my.oschina.net/u/1054538/blog/1648335

Object 对象详解相关推荐

  1. 转载 雨松mono Unity获取游戏对象详解(来自我的长微博)

    Unity获取游戏对象详解(来自我的长微博) 转载 自 雨松mono 本文固定链接: http://www.xuanyusong.com/archives/2768 转载请注明: 雨松MOMO 201 ...

  2. html内置时间对象,JavaScript中的常用事件,以及内置对象详解

    原标题:JavaScript中的常用事件,以及内置对象详解 今天是刘小爱自学Java的第81天. 感谢你的观看,谢谢你. 话不多说,开始今天的学习: 学前端有一个非常权威的组织,也就是w3c,其有个专 ...

  3. JavaScript高级编程--对象详解

    对象详解 Object.prototype.hasOwnProperty() 返回布尔 (原型对象的方法) 表示是否是对象自身的属性.所有实例对象都可以访问 这个方法会查找一个对象是否有某个属性,但是 ...

  4. Hibernate Criteria对象详解(条件查询)

    Hibernate Criteria对象详解 2014-9-1 16:21| 发布者: 传智特刊| 查看: 7290| 评论: 0 摘要: Hibernate框架是目前JavaEE软件开发的企业主流框 ...

  5. 史上最全JavaScript数组对象详解(二)

    JavaScript数组对象详解(二) 上一篇博客我们讲到了JavaScript数组对象的创建,访问和属性,接下来一篇博客主要讲一下JavaScript数组对象的方法及使用.说到数组的方法,主要分为两 ...

  6. JavaScript对象详解

    转载请注明预见才能遇见的博客:https://my.csdn.net/ 原文地址:https://blog.csdn.net/weixin_42787326/article/details/81297 ...

  7. JS window对象详解

    JS window对象详解 1.window对象 2.窗口操作 打开窗口 关闭窗口 3.对话框 confirm prompt 4.定时器 setTimeout和clearTimeout setInte ...

  8. JS Event对象详解

    JS Event对象详解 参考资料: js添加事件和移除事件:addEventListener()与removeEventListener() Event 对象 Event 对象代表事件的状态,比如事 ...

  9. jQuery的deferred对象详解

    阮一峰大神的关于jQuery的deferred对象详解 http://www.ruanyifeng.com/blog/2011/08/a_detailed_explanation_of_jquery_ ...

最新文章

  1. mysql gtid 开启失败,master--1.1.3-SNAPSHOT版本,启用GTID,启动失败
  2. python 内建函数 str() 和 repr() 的区别
  3. 阿里开源自研语音识别模型 DFSMN,准确率高达96.04%
  4. Oracle表空间的创建
  5. [Python] L1-040. 最佳情侣身高差 团体程序设计天梯赛GPLT
  6. Wannafly挑战赛27: D. 绿魔法师(莫比乌斯函数)
  7. Linux下硬盘分区的最佳方案
  8. 深入浅出 eBPF|你要了解的 7 个核心问题
  9. QQ群导出群成员名单
  10. python桌面整理小助手
  11. 支付宝退款流程 php,支付宝退款接口对接流程PHP语言
  12. Again! There are tons of wrong answers!
  13. 技术人最基本投资建议
  14. 对于Transformer 模型----可以从哪些地方进行创新和改进
  15. tensorflow的GPU加速计算
  16. ORB-SLAM2工作原理总结
  17. JSP爱心宠物诊所系统设计与实现
  18. 阿里巴巴:互联网架构将成企业IT发展刚需
  19. python输出字符的ascii码_如何获取一个字符的ASCII码
  20. C语言基础练习100--009(古典问题-兔子生崽)

热门文章

  1. BugkuCTF-MISC题三色绘恋
  2. java map removeall_Java删除Map中元素
  3. php程序访问mysql数据实现查询_PHP+MySql实现后台数据的读取
  4. java类的定义的实例_Java中类的定义和初始化示例详解
  5. c语言每条代码的含义,为我解释一下,代码的意思。谢谢了。
  6. wedo2.0编程模块介绍_福特福克斯TCM重新编程操作
  7. 怎么在win7链接无线网络连接服务器,Win7系统网络连接一直显示正在获取网络地址但是连不上网解决方法...
  8. 5元素升级android6,升级你的app以支持高长宽比的新旗舰
  9. 获取行信息_论文推荐 | 周乐韬,黄丁发,袁林果,等:基于状态和残差的北斗基准站观测数据表达与信息分级...
  10. Maven在Eclipse中的实用小技巧