07-方法(49-56)
49. 检查参数有效性
Java7 加入的 Objects.requireNonNull() 方法比较灵活且方便,因此不必再手工进行 null 检查。
50. 必要时进行保护性拷贝
简而言之,如果一个类包含有从客户端得到或者返回到客户端的可变组件,这个类就必须保护性地拷贝这些组件。如果拷贝的成本受到限制,并且类信任它的客户端不会不恰当地修改组件,就可以在文档中指明客户端的职责是不得修改受到影响的组件,以此来代替保护性拷贝。
51. 谨慎设计方法签名
谨慎选择方法的名称。
不要过于追求提供便利的方法。
避免过长的参数列表。目标是4个及以内。
对于参数类型,要优先使用接口而不是类。
对于 boolean 参数,要优先使用两个元素的枚举类型。
52. 慎用重载
永远不要导出两个具有相同参数数量的重载方法。
最好始终使用不同的方法名称,不适用重载机制。
53. 慎用可变参数
可变参数会带来参数数组的重新分配和初始化,性能会降低。
54. 返回0长度的数组或者集合,而不是 null
永远不要返回 null。
55. 谨慎返回 optinal
几乎永远都不适合用optional作为键、值,或者集合或数组中的元素。
56. 为所有导出的 API 元素编写文档注释
为了正确地编写API文档,必须在每个被导出的类、接口、构造器、方法和域声明之前增加一个文档注释。
07-方法(49-56)
https://janycode.github.io/2020/09/16/02_编程语言/01_Java/04_EffectiveJava/07-方法(49-56)/