[Java] 我的Coding Style 总结
1. 缩进
采用4个空格的缩进方式

2. tab
不采用"hard" tab。 需要更改编辑器的默认配置。将tab值改成4个空格。
3. 换行
3.1 一行不超过75个字符
3.2 如果太长,可以在:
- “,” 后换行
- 运算符前换行
4. 空格
4.1.在关键字和()之间加空格, 如: while ()
4.2. 运算符前后加空格
4.3. 在参数列表的“,”后加空格, 如: test(int id, string name)
4.4. 强制转换类型后加空格, 如: (object) x
5. 括号
不省略大括号和小括号
6. 空行
6.1. 导入的包之后加空行
6.2. 两个方法之间加空行
6.3. 局部变量和该方法中第一个逻辑语句之间加空行
6.4. if, while, for等 控制语句之前加空行
6.5. 行注释前加空行
7. 命名
7.1. 最重要的是要meaningful
7.2. 不使用生僻的单词
7.3. 太长的方法名, 可能是包含了多个功能,可以尝试拆分方法
7.4. 缩写时,建议把元音带上, 如message => MSG
7.5. 驼峰命名法。
7.6. 常量: 需要全大写, 单词与单词之间加"_".
7.7. 包: 单词中的每个字母都小写 例如: java.lang
7.8. 类的命令: 单词需是名词, 并且首字母大写
7.9. 接口: 单词需是名词, 并且首字母大写
7.10. 方法:单词需是动词, 并且首字母小写
7.11. 集合数组: 名字需是复数
7.12. 不重要的,临时变量: 采用标准名词, 如 Object o, Exception e, character c, d, e
8. 注释
8.1. 类和方法的注释一定要有。
8.2. 去除无用的comment, 通过变量名就可以了解含义
8.3. 如果有特殊的代码块,容易引起误解的,需要加注释。
8.4. 如果有多层循环, 可以在循环体的尾部加注释, 如//end while
8.5. 如果在switch中使用了fall through, 则需要加注释, 否则, 通常是要加break;
9. 其它
9.1. 类成员变量:需采用get, set 方法读取,设置
9.2. 重要的或重复的表达式或者方法应该提取出来。
9.2. 异常处理: 不忽略任何的异常信息。 如果要追踪更高级的异常, 不要忽略低级别的异常信息。
9.3. 释放资源:如果有需要释放资源, 需要放入finally块中。
其他参考:
http://www.oracle.com/technetwork/java/codeconvtoc-136057.html
http://www.infoq.com/news/2014/02/google-java-coding-standards/
[Java] 我的Coding Style 总结的更多相关文章
- Google's C++ coding style
v0.2 - Last updated November 8, 2013 源自 Google's C++ coding style rev. 3.274 目录 由 DocToc生成 头文件 ...
- 编程风格(Coding Style)要求
编程风格(Coding Style)要求2.1.1 文件(1) 每个模块(module)一般应存在于单独的源文件中,通常源文件名与所包含模块名相同.(2) 每个设计文件开头应包含如下注释内容:? 年份 ...
- Linux 内核Coding Style整理
转载:http://www.cnblogs.com/wang_yb/p/3532349.html 总结linux内核开发的coding style, 便于以后写代码时参考. 下面只是罗列一些规则, 具 ...
- (转帖) 有限狀態機FSM coding style整理 (SOC) (Verilog)
来源:http://www.codesoso.net/Record/101092_95120_21.html 来源:http://www.cnblogs.com/oomusou/archive/201 ...
- linux c coding style
Linux kernel coding style This is a short document describing the preferred coding style for the lin ...
- c coding style之学习篇
1. 使用do-while结构去避免潜在的内存泄漏问题. do { p1 = malloc(10); if (null == p1) { break; ...
- [中英对照]Linux kernel coding style | Linux内核编码风格
Linux kernel coding style | Linux内核编码风格 This is a short document describing the preferred coding sty ...
- 谈谈Linux内核驱动的coding style【转】
转自:http://www.cnblogs.com/wwang/archive/2011/02/24/1960283.html 最近在向Linux内核提交一些驱动程序,在提交的过程中,发现自己的代码离 ...
- 有限狀態機FSM coding style整理 (SOC) (Verilog)
AbstractFSM在數位電路中非常重要,藉由FSM,可以讓數位電路也能循序地執行起演算法.本文將詳細討論各種FSM coding style的優缺點,並歸納出推薦的coding style. In ...
随机推荐
- Windows环境变量
说明:系统文件盘为C盘,操作系统为Windows XP.登录用户名为weste.计算机名为icech 说明:不同的操作系统如Windows XP和Windows 2000相对应的一些路径是不同的,这里 ...
- js 日期时间比较
js时间日期比较 <script type="text/javascript"> //begin > end 返回True function comptime(b ...
- 怎么优化JAVA程序的执行效率和性能?
现在java程序已经够快的了,不过有时写出了的程序效率就不怎么样,很多细节值得我们注意,比如使用StringBuffer或者StringBuilder来拼接或者操作字符串就比直接使用String效率高 ...
- bzojj1764: [Baltic2009]monument
Description 给一个p*q*r的立方体,它由p*q*r个1*1*1的小立方体构成.每个立方体要么被虫蛀,要么不被.现在郑爽要选出一个a*a*b的立方体(方向任意),使得它没有被虫蛀过,并且4 ...
- Python列表,元组,字典,序列,引用
1.列表 # Filename: using_list.py # This is my shopping list shoplist=["apple", "mango&q ...
- The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved
偶在页面里引入了标签如下: <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core&q ...
- ServletContext(重要)
一个项目只有一个ServletContext对象! 我们可以在N多个Servlet中来获取这个唯一的对象,使用它可以给多个Servlet传递数据! 这个对象在Tomcat启动时就创建,在Tomcat关 ...
- 用socket操作redis
代码: $cmd = "*3\r\n$3\r\nSET\r\n$3\r\nfoo\r\n$3\r\nbar\r\n"; // set foo bar $socket = socke ...
- iOS获取电量方法
ios简单的方法: [UIDevice currentDevice].batteryMonitoringEnabled = YES; double deviceLevel = [UIDevice cu ...
- Python进阶07 函数对象
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 秉承着一切皆对象的理念,我们再次回头来看函数(function).函数也是一个对象 ...