sjsdfg
|
8b47ba169f
|
41.使用标记接口定义类型
|
2018-12-24 13:20:08 +08:00 |
|
sjsdfg
|
536cf61373
|
40. 始终使用 Override 注解
|
2018-12-22 13:27:54 +08:00 |
|
Joe
|
ca14bce1f1
|
Update README.md
|
2018-12-16 21:49:32 +08:00 |
|
Joe
|
a4aa4c73b4
|
Update README.md
增加源代码
|
2018-12-16 21:49:17 +08:00 |
|
sjsdfg
|
2718522449
|
39. 注解优于命名模式
|
2018-12-16 21:44:47 +08:00 |
|
sjsdfg
|
5cc7536c7e
|
39. 注解优于命名模式
|
2018-12-16 21:37:32 +08:00 |
|
sjsdfg
|
d12f102e14
|
Merge branch 'master' of https://github.com/sjsdfg/effctive-java-3rd-chinese
|
2018-12-15 15:28:35 +08:00 |
|
sjsdfg
|
e380d235d9
|
38. 使用接口模拟可扩展的枚举
|
2018-12-15 15:28:10 +08:00 |
|
Joe
|
05f85c7446
|
Update SUMMARY.md
|
2018-12-05 13:58:58 +08:00 |
|
sjsdfg
|
df58b331f0
|
37. 使用 EnumMap 替代序数索引
|
2018-12-01 19:25:56 +08:00 |
|
sjsdfg
|
945a6e4f14
|
37. 使用 EnumMap 替代序数索引
|
2018-12-01 19:24:19 +08:00 |
|
sjsdfg
|
2d7d0f54b3
|
36. 使用 EnumSet 替代位属性
|
2018-11-25 09:11:12 +08:00 |
|
sjsdfg
|
0dac4255e0
|
Merge branch 'master' of https://github.com/sjsdfg/effctive-java-3rd-chinese
|
2018-11-24 15:07:20 +08:00 |
|
sjsdfg
|
3ece35d6e8
|
35. 使用实例属性替代序数
|
2018-11-24 15:06:35 +08:00 |
|
Joe
|
e490f3be5e
|
Update SUMMARY.md
|
2018-11-16 22:11:23 +08:00 |
|
Joe
|
d1bfe5efcd
|
Update SUMMARY.md
|
2018-11-16 22:11:00 +08:00 |
|
sjsdfg
|
4b23265398
|
no message
|
2018-11-16 22:10:13 +08:00 |
|
sjsdfg
|
ec73bfe87c
|
Merge branch 'master' of https://github.com/sjsdfg/effctive-java-3rd-chinese
# Conflicts:
# 34. 使用枚举类型替代整型常量.md
|
2018-11-16 22:09:09 +08:00 |
|
sjsdfg
|
eac78291b6
|
34. 使用枚举类型替代整型常量
|
2018-11-16 22:08:18 +08:00 |
|
sjsdfg
|
2736f16182
|
Revert "34. 使用枚举类型替代整型常量"
This reverts commit 42a0556837 .
|
2018-11-16 22:04:14 +08:00 |
|
sjsdfg
|
f37bf2b593
|
GitBook: [master] 70 pages modified
|
2018-11-16 14:03:24 +00:00 |
|
Joe
|
dd27f7cee2
|
Update 01. 考虑使用静态工厂方法替代构造方法.md
|
2018-11-16 21:56:23 +08:00 |
|
sjsdfg
|
42a0556837
|
34. 使用枚举类型替代整型常量
|
2018-11-16 21:22:29 +08:00 |
|
sjsdfg
|
cf6ba2595c
|
33. 优先考虑类型安全的异构容器
|
2018-11-13 21:00:38 +08:00 |
|
sjsdfg
|
efbfb31975
|
32. 合理地结合泛型和可变参数
|
2018-11-11 00:32:54 +08:00 |
|
sjsdfg
|
b4579bc8f7
|
31. 使用限定通配符来增加API的灵活性
|
2018-11-04 16:27:52 +08:00 |
|
sjsdfg
|
ff5d7b2875
|
31.使用限定通配符来增加 API 的灵活性
|
2018-11-04 16:26:24 +08:00 |
|
sjsdfg
|
61d0b0936f
|
30. 优先使用泛型方法
|
2018-11-02 10:56:14 +08:00 |
|
sjsdfg
|
926c8c3b73
|
29. 优先考虑泛型
|
2018-11-01 10:49:54 +08:00 |
|
sjsdfg
|
525ee3a40b
|
28. 列表优于数组
|
2018-10-31 20:13:56 +08:00 |
|
sjsdfg
|
d6f5807a98
|
27. 消除非检查警告
|
2018-10-29 16:07:19 +08:00 |
|
sjsdfg
|
6fd72fa646
|
27. 消除非检查警告
|
2018-10-29 15:58:39 +08:00 |
|
sjsdfg
|
e69351fdad
|
27. 消除非检查警告
|
2018-10-29 15:57:47 +08:00 |
|
sjsdfg
|
5aa6df82a6
|
26. 不要使用原始类型
|
2018-10-27 11:15:15 +08:00 |
|
sjsdfg
|
c9546aea9d
|
25. 将源文件限制为单个顶级类
|
2018-10-25 20:04:09 +08:00 |
|
Joe
|
7aca1a46e4
|
Update README.md
|
2018-10-24 09:45:22 +08:00 |
|
sjsdfg
|
6045df11d1
|
24. 优先考虑静态成员类
|
2018-10-24 09:44:01 +08:00 |
|
sjsdfg
|
6787597219
|
23. 优先使用类层次而不是标签类
|
2018-10-23 10:44:03 +08:00 |
|
sjsdfg
|
d045f8a0b6
|
22. 接口仅用来定义类型
|
2018-10-22 11:34:20 +08:00 |
|
sjsdfg
|
09774ab2ba
|
21. 为后代设计接口
|
2018-10-21 09:42:19 +08:00 |
|
sjsdfg
|
b692fe453e
|
20. 接口优于抽象类
|
2018-10-19 10:56:26 +08:00 |
|
sjsdfg
|
5b354f9c0b
|
update
|
2018-10-18 10:17:09 +08:00 |
|
sjsdfg
|
03ecad9f03
|
19. 如使用继承则设计,应当文档说明,否则不该使用
|
2018-10-18 10:11:59 +08:00 |
|
sjsdfg
|
24a77b63f8
|
18. 组合优于继承
|
2018-10-17 16:33:42 +08:00 |
|
sjsdfg
|
458dcab813
|
17. 最小化可变性
|
2018-10-16 09:47:50 +08:00 |
|
Joe
|
2c5acf7a3f
|
Update 01. 考虑使用静态工厂方法替代构造方法.md
|
2018-10-15 16:08:40 +08:00 |
|
Joe
|
ffbb1daaa9
|
Update 01. 考虑使用静态工厂方法替代构造方法.md
|
2018-10-15 16:08:21 +08:00 |
|
sjsdfg
|
6ea5c6c662
|
16. 在公共类中使用访问方法而不是公共属性
|
2018-10-15 10:28:46 +08:00 |
|
sjsdfg
|
6c5c4e2ad6
|
16. 在公共类中使用访问方法而不是公共属性
|
2018-10-15 10:27:55 +08:00 |
|
sjsdfg
|
21697b402d
|
16. 在公共类中使用访问方法而不是公共属性
|
2018-10-15 10:22:35 +08:00 |
|