开发手册 相关规范

final可以声明类、成员变量、方法及本地变量

 下列情况下推荐使用final关键字:
    1. 不允许被继承的类,如String类
    2. 不允许修改引用的域对象,如POJO类的域变量
    3. 不允许被重写的方法,如POJO类的setter方法
    4. 不允许运行过程中重新赋值的局部变量
    5. 避免上下文重复使用一个变量,使用final描述可以强制定义一个变量

类成员与方法访问控制从严

  1. 如果不允许外部直接通过new来创建对象,那么构造方法必须是private .
  2. 工具类不允许有public或default构造方法
  3. 类非static成员变量并且与子类共享,必须是protected
  4. 类非static成员变量并且仅在本类使用,必须是private
  5. 类static成员变量如果仅在本类使用,必须是private
  6. 若是static成员变量,必须考虑是否为final
  7. 类成员方法只供类内部调用,必须是private
  8. 类成员方法只对继承类公开,那么限制为protected 

防止NPE(NullPointException), 是程序员的基本修养

注意NPE产生的场景:

  • 当返回类型是基本数据类型,return 包装数据类型的对象,自动拆箱有可能产生NPE
  • 数据库的查询结果可能为null
  • 集合里的元素即使是 isNotEmpty, 取出的元素也有可能为null
  • 远程调用返回对象时,一律要求进行空指针判断,防止NPE
  •  对于session中获取的数据,建议NPE检查 

猜你喜欢

转载自blog.csdn.net/qq_34579060/article/details/93743297