其他知识点¶
Arrays工具类¶
操作数组的工具类
涉及数组的操作,先考虑是否工具类实现了,有的话使用现成的
方法 | 功能 |
---|---|
equals |
比较两个数组是否相等 |
toString |
输出数组信息 |
fill |
将指定值填充到数组里面 |
sort |
排序 |
binarySearch |
对排序好的数组使用二分查找检索指定值。返回索引或者-(insertion_point + 1) |
Object类¶
- 所有类的根父类
- 如果没有声明继承哪个类,则默认继承
Object
类 - 类中的属性、方法具有通用性。如
equals
,toString
,getClass
,clone
,finalize
等 - 只有一个无参构造
equals和==的区别¶
==
既可以比较基本类型也可以比较引用类型。对于基本类型就是比较值(数据类型可以不同),对于引用类型就是比较内存地址equals
的话,它是属于Object
类里面的方法。只能用于引用数据类型。如果该方法没有被重写过默认也是==
;如果重写equals
方法,则一般是比较类中的相应属性是否都相等。
自定义类如何定义equals方法¶
原则:比较两个对象的属性是否相同
基本数据类型使用==
,引用数据类型使用对应的equals
方法
可以自动生成
接口¶
JDK7 之前,接口只能定义全局常量和抽象方法
// 全局常量: public static final
// 方法都是 public abstract 的
JDK8:可以定义静态方法和默认方法
其他:
- 接口中定义的静态方法,只能通过接口调用
- 通过接口的实现类的对象,可以调用接口中的默认方法
- 如果子类(或实现类)继承的父类和实现的接口有同名同参数的默认方法,如果子类没有重写,默认调用的是父类中的方法
-->
类优先原则 - 如果实现了多个接口,但是接口里面有有同名同参数的默认方法,则必须重写此方法
- 调用接口中被重写的方法:
接口.super.方法名()