一、检查参数的有效性

  1、考虑参数有哪些限制,把限制写到文档中,在方法的开头处通过显式地检查来实施这些限制。

二、必要时进行保护性拷贝

  1、如果类具有从客户端得到或者返回的可变组件,类就必须考虑保护性拷贝这些组件。

  2、如果拷贝成本比较高,类又可以信任他的客户端,不进行拷贝保护,但要进行文档的说明。

三、谨慎设计方法签名

  1、谨慎地选择方法的名称:遵守规范,保持风格一致。

  2、不要过于追求提供便利的方法。

  3、编码过长的参数列表

    a、一个方法分解成多个方法

    b、创建辅助类,保存参数的分组。

    c、使用Builder模式

  4、对于参数类型,要优先使用接口而不是类

  5、对于boolean参数,优先使用两个元素的枚举类型。

四、慎用重载

  1、重载方法的调用是在编译时做出决定。覆盖方法的选择是在运行时做出决定。

  2、尽量不要导出多个具有相同参数数目的重载方法。

  3、不要重载具有可变参数的方法

五、慎用可变参数

六、返回零长度的数组或者集合,而不是null

  1、返回类型为数组或者集合的方法应该返回一个零长度的数组或者集合,而不是null。

七、为所有导出的API元素编写文档注释

  

  

最新文章

  1. 【巩固】Bootstrap笔记三
  2. Git 分支管理策略
  3. #笔记#JavaScript进阶篇二
  4. 保存知乎收藏夹功能的NodeJS版本
  5. 在线调试和演示的前端开发工具------http://jsfiddle.net/
  6. XML基础总结2
  7. dwr与ssh框架整合教程
  8. 关于iOS7 上下黑条解决办法
  9. [转]深入理解jQuery插件开发
  10. lex 和 yacc 的区别与联系
  11. [方法] ubuntu12.04开启root账户
  12. tastypie Django REST framework
  13. sql快速参考
  14. mock server 前后端分离小结(转)
  15. Windows下配置vue的环境
  16. Tiny4412之蜂鸣器驱动与led灯驱动
  17. python将多个pdf合成一个
  18. IDEA中项目编码格式设置
  19. hbase-hive整合及sqoop的安装配置使用
  20. HIVE配置错误信息

热门文章

  1. 会话控制:session与cookie
  2. Java反射机制<1>
  3. Nginx+HTTPS(SSL/TLS)
  4. IPcamera
  5. 轻量级router[类似laravel router]
  6. trace enabled
  7. Python开发【第十九篇】:Python操作MySQL
  8. Elasticsearch-PHP 索引操作(转)
  9. php/js互传cookie中文乱码的问题
  10. Junit使用教程 转