




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、JAVA编程规范工作安排A. 每个人每天早上领取任务后,一些业务逻辑的处理上,过一下思路。B. 任务每天完成后,下班前提交,如果遇到问题不能保证及时完成,要提前提出。C. 代码会每天走查,希望各位小伙伴尽量按照编码规则来1.1 排版规则1.1.1.1 缩进缩进使程序更易阅读,程序块要采用TAB缩进风格编写。1.1.1.2 分界符分界符应该与函数名或if、for、do、while、switch、case语句同行,并与其以空格(“ ”)间隔。示例:if (ab) doStart();1.1.1.3 较长的语句、表达式、参数(80字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在
2、新行之首。示例:if (logger.isDebugEnabled() logger.debug(Session destroyed,call-id+ event.getSession().getCallId(); 1.1.1.4 不允许每个短语独占一行示例:如下例子不符合规范。Object o = new Object(); Object b = null;1.1.1.5 代码段明确化if, for, do, while,switch等语句的执行语句无论多少都要加括号,case 的执行语句中如果定义变量必须加括号。示例:if (a b) doStart();case x: int i = 9
3、;1.1.1.6 相对独立的程序块之间/变量声明之后 必须加空行示例:if(a b) doStart();/此处是空行return;1.1.1.7 操作符用空格隔开在两个以上的关键字、变量、常量进行对等操作时,它们之间的操作符前后要加空格,关系密切的立即操作符(如.),不加空格。1.1.1.8 类属性和类方法不要交叉放置类属性和类方法不要交叉放置,不同存取范围的属性或者方法也尽量不要交叉放置。类定义(格式) 类的公有属性定义类的保护属性定义类的私有属性定义类的公有方法定义类的保护方法定义类的私有方法定义1.1.1.9 修饰词按照指定顺序书写修饰书写顺序:访问权限staticfinal 。示例:
4、public static final String str = “abc”;1.1.1.10 重载对重载父类的方法必须进行Override声明说明:可清楚说明此方法是重载父类的方法,保证重载父类的方法时不会因为单词写错而造成错误(写错方法名或者参数个数,类型都会编译无法通过)示例:Overridepublic void doRequest(SipServletRequest req) throws ServletException,IOException1.2 注释规则1.2.1.1 源程序注释量必须在30以上1.2.1.2 包注释包注释内容:简述本包的作用、详细描述本包的内容、产品模块名称
5、和版本、公司版权。示例:为 WEBSMAP 提供通信类,上层业务使用本包的通信类与 SMP-B 进行通信。详细描述。IIN V100R001 WEBSMAP(C) 版权所有 2009-2015 四象联创科技有限公司1.2.1.3 类注释1.类的起始要有注释,要说明类的作用和类的作者,如:2.方法注释:接口开头要有注释,要详细说明作用,参数,及返回值还有作者,接口实现类可以只写一个比较简单的说明:接口注释:方法注释 3.javabean中所有属性必须加上注释,并且必须采用/*/这种注释,涉及到状态的必须标明有哪些状态,如:4. 代码中比较关键的节点和比较复杂的逻辑需要加上注释1.2.2 建议建议
6、1 避免在一行代码或表达式的中间插入注释。建议2 对关键变量的定义和分支语句(条件分支、循环语句等)必须编写注释。1.3 命名规则1.3.1.1 类名和接口使用类意义完整的英文描述,每个英文单词的首字母使用大写、其余字母使用小写的。示例:OrderInformation, CustomerList, LogManager, LogConfig, SmpTransaction1.3.1.2 方法名使用类意义完整的英文描述:第一个单词的字母使用小写、剩余单词首字母大写其余字母小写。示例:public void addNewOrder();1.3.1.3 属性名使用意义完整的英文描述,第一个单词的字
7、母使用小写,剩余单词首字母大写其余字母小写。属性名不能与方法名相同。示例: private customerName;1.3.1.4 常量使用全大写的英文描述,英文单词之间用下划线分隔开,并且使用 static final修饰。(1.42+)示例: public static final int MAX_VALUE = 1000;public static final String DEFAULT_START_DATE = 2001-12-08;1.3.2 建议包名全部使用小写字母,要有意义,尽量不使用缩写。格式:sxlc.产品名.模块名称示例:融合WEBSMAP包名 sxlc.iin.web
8、smap如果函数名超过15 个字母,可以缩写方式缩写函数名。示例:getCustomerInformation() 改为 getCustomerInfo()含有集合意义的属性命名,尽量包含其复数的意义。示例:customers, orderItems1.4 编码规则1.4.1.1 close()数据库操作、IO操作等需要使用结束close()的对象必须在try -catch-finally 的finally中close(),如果有多个IO对象需要close(),需要分别对每个对象的close()方法进行try-catch,防止一个IO对象关闭失败其他IO对象都未关闭。示例:try / . .
9、catch(IOException ioe) /. .finally try out.close(); catch (IOException ioe) /. .try in.close(); catch (IOException ioe) /. . 1.4.1.2 异常记录日志系统非正常运行产生的异常捕获后,如果不对该异常进行处理,则应该记录日志。示例:try /. . catch (IOException ioe) logger.error(ioe);1.4.1.3 自己抛出的异常必须要填写详细的描述信息示例:throw new IOException(Writing data error!
10、 Data: + data.toString();1.4.1.4 运算符优先级说明:注意运算符的优先级,并用括号明确表达式的操作顺序,避免使用默认优先级。防止阅读程序时产生误解,防止因默认的优先级与设计思想不符而导致程序出错。示例:(1)word = (high 8) | low (1)if (a | b) & (a & c) (2)if (a | b) (c & d) (3)如果书写为(2)high 8 | lowa | b & a & ca | b c & d(1)(2)虽然不会出错,但语句不易理解;(3)造成了判断条件出错。1.4.1.5 避免不易理解的数字示例:如下的程序可读性差。if
11、 (state = 0) state = 1; . / program code应改为如下形式:private final static int TRUNK_IDLE = 0;private final static int TRUNK_BUSY = 1;private final static int TRUNK_UNKNOWN = -1;if (state = TRUNK_IDLE) state = TRUNK_BUSY; . / program code注意:Java 5.0 下建议使用枚举来表示。异常:public void function() . throw new Runtime
12、Exception(“。”);1.4.1.6 数据声明数组声明的时候使用 int index ,而不要使用 int index 。示例:如下程序可读性差:public int getIndex() .如下程序可读性好:public int getIndex() .1.4.1.7 使用调测开关切换debug和正式版用调测开关来切换软件的DEBUG版和正式版,而不要同时存在正式版本和DEBUG版本的不同源文件,以减少维护的难度。1.4.1.8 集合必须制定模板类型示例:Map map = new HashMap();1.4.1.9 一个文件不要定义两个类一个文件不要定义两个类(并非指内部类)。1.
13、4.1.10 所有自定义的数据类必须复写toString()、hashCode()、equals() toString()方法返回该类有意义的内容。说明:方便数据类的比较,父类如果实现了比较合理的toString() ,子类可以继承不必再重写。hashCode与equals可以使用eclipse自动生成。示例:public TopoNode private String nodeName; public String toString() return NodeName : + nodeName; 1.4.1.11 不使用”* = true”以下错误:if (ok = true) 以下正确:if (ok) 1.4.1.12 不要写没有必要的向上强制转型示例:以下错误:FileInputStream fis = new FileInputStream(f);InputStream is = (InputStream)fis;1.4.2 建议建议1 记录异常不要保存exception.getMessage(),而要记录exception.t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 密封胶施工饱满度与连续性技术专题
- 2025短期用工劳动合同模板
- 提高工程设计企业的成本控制与预算管理
- 2025标准版担保借款合同样式
- P-gp-inhibitor-28-生命科学试剂-MCE
- 2025年中国室外硅胶填缝剂行业市场前景预测及投资价值评估分析报告
- 4-Azide-TFP-amide-SS-propionic-acid-生命科学试剂-MCE
- 2025年托福口语独立任务3-4时间管理技巧解析:专项训练试卷与策略
- 2025沿街店铺租赁合同
- 西昌市川兴水厂改扩建工程环评报告
- GB 5009.5-2025食品安全国家标准食品中蛋白质的测定
- 2025年手术授权理论考核试题
- 盘锦市事业单位定向招聘退役大学生士兵考试真题2024
- 汽车行业跨界合作与创新模式
- 物理跨学科实践-制作微型密度计(教学设计)-2024-2025学年八年级物理下学期(人教版2024)
- 电梯考试复习测试卷附答案
- 医学资料 单孔腹腔镜在妇科中的应用 学习课件
- 2025届广东省佛山市高三上学期一模生物试题含答案
- 2025年山东省济南市历下区中考一模地理试题(含答案)
- 建筑工程企业财务管理制度
- 电销团队管理心得
评论
0/150
提交评论