Java基础学习总结(92)——Java编码规范之排版、注释及命名

原创 2017年01月03日 09:53:54

为使开发人员养成良好的开发习惯,编写可读性强、易维护的程序,结合以往资料,现整理Java编码规范,将之作为开发人员的参照依据。

一、排版

1、相对独立的程序块之间必须加空行

下列情况应该使用一个空行:

  • 两个方法之间

  • 方法内的局部变量和方法的第一条语句之间

  • 块注释或单行注释之前

  • 一个方法内的两个逻辑段之间

2、单行长度不超过120个字符,如超出则换行,且操作符应放在行首,新行要有相对缩进

3、多个参数之间,二元运算符左右,for语句表达式之间应用空格隔开

JAVA编码规范之排版、注释及命名

表达式之间用空格隔开

4、多个短语句不要写在一行中,也就是说一行只写一条语句

5、while、for、if、do、case、default、switch等语句独占一行,且while、for、do、if等语句的执行部分无论有多少句,都要用“{}”括起来

6、程序首行缩进4个空格数,不允许使用TAB缩进(使用空格可很好的适应不同操作系统的开发工具)


二、注释

注释应遵循的原则:

  • 注释的内容要清楚、明了,含义准确,防止注释二义性。同时应尽量避免在注释中使用缩写,特别是不常用缩写。如需要写,则进行必要的说明。

  • 源程序有效注释量必须在30%以上。注释语言必须准确、易懂、简洁。

1、类注释以“/** */”的方式放在class 或者 interface 关键字之前,import 关键字之后

注释概要部分应要简明扼要,用简短的语句描述清除类的主要用途。注释可根据需要列出:作者、内容、功能、与其它类的关系等。

功能详细描述部分说明该类或者接口的功能、作用、使用方法和注意事项,每次修改后增加作者和更新版本号和日期,@since 表示从那个版本开始就有这个类或者接口,如下图:

JAVA编码规范之排版、注释及命名

类的注释

2、方法的注释,需列出方法的一句话功能简述、功能详细描述、输入参数、输出参数、返回值、异常等,如下图所示:

JAVA编码规范之排版、注释及命名

方法的注释

3、对代码行的注释:注释应与其描述的代码相近,对代码的注释应放在其上方,并与其上面的代码用空行隔开,注释与所描述内容进行同样的缩排。

4、对代码进行修改时,应同步修改相应的注释,以保证注释与代码的一致性。不再有用的注释要删除。

5、重写父类方法时必须进行@Override声明。

6、关键语句(条件分支、循环语句等)必须编写注释,精准的注释位置可帮助维护人员更好的理解程序,其效果有时比看设计文档要好的多。

7、方法内重要的单行代码用“//”注释,且注释语句与上句代码之间应空一行。

三、命名

1、包名采用域后缀倒置的加上自定义的包名,字母小写,均以com.xxxx开头(特殊情况除外)

在部门内部应该规划好包名的范围,防止产生冲突。部门内部产品使用部门的名称加上模块名称。产品线的产品使用产品的名称加上模块的名称。除特殊原因包结构都必须以com.xxxx开头,如果因为OEM合作等关系,可以不做要求。

2、类名和接口使用类意义完整的英文描述,英文单词的首字母使用大写、其余字母使用小写的大小写混合法,如:

OrderInformation, CustomerList, LogManager等

3、方法名使用意义完整的英文描述:第一个单词的字母使用小写、其余单词首字母大写其余字母小写的大小写混合法,如:

  • public static boolean checkAuthorization(){……}

  • public static String makeAuthorizationCode(){……}

4、相关方法中的存取属性的方法采用setter 和 getter方法,动作方法采用动词和动宾结构,如:

  • get + 非布尔属性名():public String getType();

  • is + 布尔属性名():public boolean isFinished();

  • set + 属性名():public void setVisible(boolean);

  • 动词():public void show();

  • 动词 + 宾语():public void addKey(Listener);

5、属性名使用完整的英文单词,首单词的字母小写,其他单词首字母大写其余字母小写,如:

  • private orderNumber;

  • private smpSession;

  • private customerName;

6、避免使用学术专业术语(魔法数字等)当作变量,用有意义的常量名来替代。

如涉及物理状态或者含有物理意义的常量,不应直接使用数字或单个字母,必须用有意义的静态常量代替,如:

JAVA编码规范之排版、注释及命名

定义常量代替

7、常量名用大写英文描述,单词间用下划线分隔,且用 static final修饰,如:

  • public static final int PAGE_SIZE = 100;

  • public static final String DEFAULT_START_DATE = "2020-01-01";

8、数组采用“类型[] 数组名”的方式定义 ,而不用“类型 数组名[]”的方式定义,如:

  • 可读性差:public String getCustomers()[]{ ....}

  • 可读性强:public String[] getCustomers(){ ....}


9、如函数的名称大于15 个字母,则可去掉单词的元音字母或者以业内约定俗成的缩写方式命名,如:

可将 getCustomerInformation() 改为 getCustomerInfo()

10、集合类的属性命名时,应尽量以其复数形式表意,如:

students, orderItems

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

《Google Java编程风格指南》代码注释与编码规范~总结

一:术语 1、术语class可表示一个普通类,枚举类,接口或是annotation类型(@interface)。 2、术语comment只用来指代实现的注释(implementation comm...

JAVA_SE基础——编码规范&代码编写规则

这次我来给大家说明下编码规范&代码编写规则  ↓ 编码规范可以帮助程序员在编程时注意一些细节问题,提高程序的可读性,让程序员能够尽快地理解新的代码,并帮助大家编写出规范的利于维护的Java代码。 ...

阿里java编码规范(三)控制语句,注释规约

最近阿里出了一个java开发手册,里面涉及到很多工作规范的地方,有很多借鉴和参考的作用,也可以给新入行的工程师作为参考。 下载地址是在:http://techforum-img.cn-hangzho...

Java基础——注释

一.注释 1.定义: 注释就是使用文字对程序的说明,注释是写给程序员看的,编译器会忽略注释的内容。 2.作用: 使用文字对程序说明,提高程序的可...

android基础——对Java中注释/**@hide*/的初步认识

今天写一个调节系统背光亮度的时候,参考了Android中的Setting源码,在源码中有这么一段代码: [java] view plaincopy priv...

黑马程序员——Java基础(二)之关键字、标识符、注释、常量、变量、进制转换

关键字 被Java语言赋予特定含义的单词被称为关键字。 特点:组成关键字的字母全部小写。 1.定义数据类型的关键字: class  定义类 interface  定义接口 byte  字节型 ...

黑马程序员——Java基础语法(一.关键字、标识符、注释、常量和变量、运算符)

——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-一.Java语言基础组成1.1关键字定义:电脑语言里事先定义的,有特别意义的标识符,有时又叫保留字,还有特别意义的...

Java代码规范--排版,命名---以及一个例子

一 排版规范 1:对于变量的初始化赋值时候,= 要对齐,这样看着整齐舒服 // Before private Char joe = 'joe'; private Char johnny = '...

黑马程序员java基础学习日记——做题遇到GBK查资料发现了个有趣的文章——ASCII、Unicode、GBK和UTF-8字符编码的区别联系

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)