effective Jave 笔记
静态工厂方法比构造器优点 它们有名字
它们避免了每次调用产生新的对象
参数负杂情况下代码变得简洁
可以返回原始类型的任何子类型
避免创建无用对象
消除过期对象
避免使用终结方法
使用私有构造器强化不可实例能能力
使类和实例访问性最小化
使可变性最小化
慎用多参数
慎用方法重载
普通类覆盖equal , hascode, 最好实现comparable接口
声明数组最好给出初始值大小
try catch 子句放在循环外边
foreach 在过滤、转换、平行迭代不能使用
foreach 优于传统 while for
组合优于继承
接口优于抽象类
列表优于数组
基础类型优于装箱类型
接口优于反射
板举类型优于常量
通过接口引用对象
检验参数有效性
executor 和 task 优先于线程
避免过度同步