注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

小哲

从今以后,你会是所有幸福的理由!

 
 
 

日志

 
 

编程规范  

2011-02-17 11:11:53|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

本文分析了jdk源代码String.class 的代码规范.

接触java有两年多了,真正的开发也只有不到3个月. 看平台代码才知道,自己的差距还是很远的. 各式各样的风格都有,这是与好的程序员的差距.从今天开始,我要树立自己的代码风格,模板为jdk源代码. 一些基本的规范就不列举了.

1.空格

(1) 关于=号, 对变量赋值时,按照jdk源码 = 两端加两个空格,如

Java代码
  1. int size = original.count;
int size = original.count;

(2)对于关系运算符(> < == ..) 两端也加空格

Java代码
  1. if (offset < 0) {
if (offset < 0) {

(3) 方法后 加空格然后{

Java代码
  1. public String() {
  public String() {

(4)对于多个参数间,参数间逗号后加空格

Java代码
  1. System.arraycopy(value, 0, v, 0, size);
 System.arraycopy(value, 0, v, 0, size);

(5) if语句中 括号() 外面两侧都加一个空格

Java代码
  1. if (offset < 0) {
if (offset < 0) {

2 空行

(1)pakage上下各一空行

(2)所有import中没有空行

(3)成员变量间有一空行

(4)连个方法间有一空行

3.注释

(1)类注释:写出类的功能, 其它格式见下,如author, 日期格式: MM/DD/YYYY

Java代码
  1. /**
  2. * The <code>String</code> class represents character strings. All
  3. *
  4. * @author Lee Boynton
  5. * @author Arthur van Hoff
  6. * @version 1.189, 10/21/05
  7. * @see java.lang.Object#toString()
  8. * @see java.lang.StringBuffer
  9. * @see java.lang.StringBuilder
  10. * @see java.nio.charset.Charset
  11. * @since JDK1.0
  12. */
/**   * The <code>String</code> class represents character strings. All   *   * @author  Lee Boynton   * @author  Arthur van Hoff   * @version 1.189, 10/21/05   * @see     java.lang.Object#toString()   * @see     java.lang.StringBuffer   * @see     java.lang.StringBuilder   * @see     java.nio.charset.Charset   * @since   JDK1.0   */

(2)成员变量的注释:单行使用/** comment .*/ ( 注意标点)

Java代码
  1. /** The value is used for character storage. */
  2. private final char value[];
  /** The value is used for character storage. */      private final char value[];

(3)方法注释: 首行写出方法作用,

参数行通过@param 参数变量 参数注释.

异常 @exception 异常名 注释

返回 @return 注释

Java代码
  1. /**
  2. * Allocates a new <code>String</code> that contains characters
  3. * @param value array that is the source of characters.
  4. * @param offset the initial offset.
  5. * @param count the length.
  6. * @exception IndexOutOfBoundsException if the
  7. * the bounds of the <code>value</code> array.
  8. */
  9. public String(char value[], int offset, int count) {
 /**       * Allocates a new <code>String</code> that contains characters        * @param      value    array that is the source of characters.       * @param      offset   the initial offset.       * @param      count    the length.       * @exception  IndexOutOfBoundsException  if the        *        the bounds of the <code>value</code> array.       */      public String(char value[], int offset, int count) {    

(5)单行注释

//和下面if 竖直对齐

Java代码
  1. // Argument is a String
  2. if (cs.equals(this)) * @see java.lang.Object#toString()
    * @see java.lang.StringBuffer
    * @see java.lang.StringBuilder
    * @see java.nio.charset.Charset
    * @since JDK1.0
    */
/**   * The <code>String</code> class represents character strings. All   *   * @author  Lee Boynton   * @author  Arthur van Hoff   * @version 1.189, 10/21/05   * @see     java.lang.Object#toString()   * @see     java.lang.StringBuffer   * @see     java.lang.StringBuilder   * @see     java.nio.charset.Charset   * @since   JDK1.0   */
  评论这张
 
阅读(166)| 评论(1)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017