Day11
今天内容:
(1)Object类
1.Object类
1.1 常见的包
java.lang包 - 该包是Java语言的核心包,该包中的所有类等信息由Java虚拟机自动导入
- 如:String类、System类等
java.util包 - 该包是Java语言的工具包,该包中提供了大量的工具类和集合类等信息。
- 如:Scanner类、Random类等
java.io包 - 该包是Java语言的输入输出包,该包中提供了大量操作文件的相关类信息。
- 如:FileInputStream类、FileOutputStream类等
java.net包 - 该包是Java语言的网络包,该包中提供了大量网络通信有关的类信息。
- 如:ServerSocket类、Socket类等
... ...
1.2 Object类
(1)基本概念
java.lang.Object类是Java类层次结构的根类,任何类都是该类的直接/间接子类。
(2)常用的方法(重点)
Object() - 使用无参方式构造对象。
boolean equals(Object obj) - 用于判断调用对象是否与参数对象相等。
- 该方法默认比较两个对象的地址,与==的效果等价。
- 为了比较两个对象中的内容,则需要重写该方法。
- 当该方法被重写时,通常有必要重写hashCode()方法来维护常规协定。
int hashCode() - 用于获取调用对象的哈希码值(内存地址的编号)。
- 若两个对象调用equals()方法相等,则各自调用hashCode()方法的结果必须相同。
- 若两个对象调用equals()方法不相等,则各自调用hashCode()方法应该不同。
- 为了满足上述两条协定,则需要重写该方法。
String toString() - 用于返回调用对象的字符串形式。
- 默认返回的内容:包名.类名@哈希码值的十六进制形式。
- 为了返回更有意义的数据,则需要重写该方法。
- 当使用println()/print()打印引用变量时以及字符串拼接引用变量时会自动调用
toString()方法。