未验证 提交 c7c3483c 编写于 作者: Linky1990's avatar Linky1990 提交者: GitHub

Update 10. 重写equals方法时遵守通用约定.md (#62)

上级 15ac584d
......@@ -350,7 +350,7 @@ public final class PhoneNumber {
1. **当重写 equals 方法时,同时也要重写 hashCode 方法(详见第 11 条)**
2. **不要让 equals 方法试图太聪明。** 如果只是简单地测试用于相等的属性,那么要遵守 equals 约定并不困难。如果你在寻找相等方面过于激进,那么很容易陷入麻烦。一般来说,考虑到任何形式的别名通常是一个坏主意。例如,File 类不应该试图将引用的符号链接等同于同一文件对象。幸好 File 类并没这么做。
3. **在 equal方法声明中,不要将参数 Object 替换成其他类型。** 对于程序员来说,编写一个如下所示的 equals 方法,然后花上几个小时苦苦思索为什么不能正常工作的情况并不少见:
3. **在 equals 方法声明中,不要将参数 Object 替换成其他类型。** 对于程序员来说,编写一个如下所示的 equals 方法,然后花上几个小时苦苦思索为什么不能正常工作的情况并不少见:
```java
// Broken - parameter type must be Object!
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册