一些你需要知道的Java编程代码规范

首先,强烈推荐你先参考Sun官方的Java代码/编程规范:
http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html
你可以打破以上的任一规则,不过一定要有个好理由,并且记录下来。

永远,永远,永远不要在没有记录堆栈跟踪信息(stack trace)或是重新抛出异常的情况下捕获异常,俗称“吃掉异常”。用log.debug()也不错,只要别丢失堆栈跟踪信息就行。

原则上请使用基于setter方法的依赖注入来将类与类解耦(当然,如果紧耦合可以令人满意的话就另当别论)。
若没有足够理由,不要把实例或类变量声明为公有。通常,实例的私有变量如果不需要暴露给外部的话,则无需设置setter和getter方法。

避免缩写。为人熟知的缩写则可以,例如DAO。

建议约定:需要返回Collections或者数组的方法不应该返回null。应该返回空的容器或数组,而不是null。

禁止使用“魔法数字”,即禁止在代码中直接使用未声明的常量数字。

设计一组常量时优先考虑使用enum类型枚举,如果你的JDK版本高于5.0的话。

类被设计用来归纳一种对象,即把一种对象的属性和行为归置在一起,形成一个“类型”。包则是把相关的类集中在一起的容器,所以可以利用“同包级访问”权限(即不声明为public/protected/private)来进一步完善系统模块的封装性,类似C++中的“友元”。

在系统设计中,不可避免的会涉及到创建工具类型,如:StringUtils, DateTools … 这些工具类型的特点是:静态而不需要被实例化,因此建议将此类型声明为抽象(abstract)。

以面向对象的角度来看,结构化的程序都是静态(static)的,大量使用静态类型无疑不是面向对象的思路。静态域是无法为实例保持状态的,同时,在多线程情况下,需要考虑静态类型造成线程重入和内存不同步的问题。慎用静态(static)。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值