Object类

1)没有属性
2)每个类实例化都会调用该根父类

Object类的常用方法

equals()方法

2.0 Java复习之Object类
基本数据类型:比较值是否相等(自动类型转换,从而值相等)


2.0 Java复习之Object类
引用数据类型:比较地址值


Ctrl+shift+P查看底层源码
2.0 Java复习之Object类


实例
2.0 Java复习之Object类
Object类的equals()也是比较地址值是否相等,最后一个true的原因如下:

String类重写了equals()方法(从前往后比较字符串内容,若都相同,输出true)


2.0 Java复习之Object类

eclipse提供重写根父类equals()方法


字符串常量池的设计妙处所在

方法区:字符串常量池,类的方法,包,类名
2.0 Java复习之Object类
2.0 Java复习之Object类
逻辑判断原因解析

小tips:字符串AA通过数组来存储

最后一个true关注原因,类比str1 == str2
总而言之,String为引用数据类型

练习1 (equals)

掌握重写equals()的基本流程
2.0 Java复习之Object类


重写equals()方法,false变true
2.0 Java复习之Object类


练习2(equals)

2.0 Java复习之Object类

2.0 Java复习之Object类

上述方法并不严谨,当子类和父类的属性相同时,同样返回true,其实应该返回false


建议利用eclipse提供的source来生成

2.0 Java复习之Object类


ToString()方法

2.0 Java复习之Object类
object类中的ToString()方法理解:
调用对象引用时,调用HashCode()方法,结合对象属性值,算哈希值
然后哈希值以16进制输出,实际对应对象实体在堆空间的首地址值

一言以蔽之:打印对象所在类及堆空间的对象实体信息
2.0 Java复习之Object类


ToString()方法重写(手动/自动)
2.0 Java复习之Object类


输出结果
2.0 Java复习之Object类


ToString()方法练习

2.0 Java复习之Object类

2.0 Java复习之Object类


circle类
2.0 Java复习之Object类
2.0 Java复习之Object类
super空参自动调用,不要多此一举,注释处多余
2.0 Java复习之Object类
学习String.valueOf的用法


2.0 Java复习之Object类


包装类导论

回顾:创建引用变量,new,引用变量栈,对象实体堆

基本数据类型都是值,无法调用方法,对象才能调用方法

基本数据类型对应的包装类,取值范围不变
特殊的Boolean可以取NULL(引用数据类型默认值)

Junit单元测试方法的使用

2.0 Java复习之Object类
2.0 Java复习之Object类
2.0 Java复习之Object类

引入该单元来测试程序,从而不依靠main方法来运行该程序,好处在于main方法中要靠对象调用方法,而在此单元中直接调用,参照m1()

相关文章:

  • 2022-01-01
  • 2021-10-04
  • 2021-08-25
  • 2021-09-09
  • 2021-08-25
  • 2022-12-23
  • 2021-06-07
  • 2021-08-25
猜你喜欢
  • 2021-08-06
  • 2022-12-23
  • 2021-04-16
  • 2022-01-19
  • 2021-06-29
  • 2021-08-10
相关资源
相似解决方案