对于所有对象都通用的方法
1. 覆盖 equals 时请遵守通用约定
- 自反性
x != null
x.equals(x) == true
- 对称性
x != null && y != null
when x.equals(y) == true then y.equals(x) == true
- 传递性
x != null && y != null && z != null
when x.equals(y) == true && y.equals(z) == true then x.equals(z) == true
- 一致性
- 非空性
x != null
x.equals(null) == false