欢迎来到天天文库
浏览记录
ID:18032036
大小:22.77 KB
页数:13页
时间:2018-09-13
《类变量命名不规范会有什么问题》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、类变量命名不规范会有什么问题 篇一:命名规范 一、介绍 本文档为GoogleJava编程规范的完整定义。依照此规范编写的Java源码文件可以被称为GoogleStyle。 和其他编程规范指南一样,规范不仅包括了代码的结构美学,也包括了其他一些业界约定俗成的公约和普遍采用的标准。本文档中的规范基本都是业界已经达成共识的标准,我们尽量避免去定义那些还存在争议的地方。 术语说明 本文档除非特殊说明,否则: a、class(类)统指普通的class类型、enum枚举类型、interface类型和annotation类型。b、comment(注释)总是指implementationcomm
2、ents(实现注释,/**/)。我们不使用“文档注释”这样的说法,而会直接说javadoc。 其他术语说明,将在文档中需要说明的地方单独说明。 文档说明 本文档中的代码并不一定符合所有规范。即使这些代码遵循GoogleStyle,但这不是唯一的代码规范。例子中可选的格式风格也不应该作为强制执行的规范。 二、源码文件基础 文件名 源码文件名由它所包含的顶级class的类名(大小写敏感),加上.java后缀组成。(除了文件)。 文件编码:UTF-8 源码文件使用UTF-8编码。 特殊字符 空格字符 除了换行符外,ASCII水平空白字符(0x20)是源码文件中唯一支持的空格字符
3、。这意味着:a、其他空白字符将被转义。 b、Tab字符不被用作缩进控制。 特殊转义字符串 任何需要转义字符串表示的字符(例如b,t,,f,r,',\等),采用这种转义字符串的方式表示,而不采用对应字符的八进制数(例如 12)或Unicode码(例如u000a)表示。 非ASCII字符 对于其余非ASCII字符,直接使用Unicode字符(例如∞),或者使用对应的Unicode码(例如u221e)转义,都是允许的。唯一需要考虑的是,何种方式更能使代码容易阅读和理解。 注意:在使用unicode码转义,或者甚至是有时直接使用unicode字符的时候,添加一点说明注
4、释将对别人读懂代码很有帮助。 例子: ExampleD Allowed,butthere'snoreasontodothis. Poor:thereaderhasnoideawhatthisis. StringunitAbbrev="u03bcs";//"μs"StringunitAbbrev="u03bcs";newint[]{5,6}和inta,b; 当需要时才声明,尽快完成初始化 局部变量不应该习惯性地放在语句块的开始处声明,而应该尽量离它第一次使用的地方最近的地方声明,以减小它们的使用范围。 局部变量应该在声明的时候就进行初始化。如果不能在声明时初始化,也应该尽快完
5、成初始化。 数组 数组初始化:可以类似块代码处理 所有数组的初始化,都可以采用和块代码相同的格式处理。例如以下格式都是允许的: 不能像C风格一样声明数组 方括号应该是变量类型的一部分,因此不应该和变量名放在一起。例如:应该是String[]args,而不是mName,kName。 不同类型的标示符规范 包名 包名全部用小写字母,通过.将各级连在一起。不应该使用下划线。 类名 类型的命名,采用以大写字母开头的大小写字符间隔的方式(UpperCamelCase)。 class命名一般使用名词或名词短语。interface的命名有时也可以使用形容词或形容词短语。annotati
6、on没有明确固定的规范。 测试类的命名,应该以它所测试的类的名字为开头,并在最后加上Test结尾。例如:HashTest、HashIntegrationTest。 方法名 方法命名,采用以小写字母开头的大小写字符间隔的方式(lowerCamelCase)。 方法命名一般使用动词或者动词短语。 在JUnit的测试方法中,可以使用下划线,用来区分测试逻辑的名字,经常使用如下的结构:test_。例如:testPop_emptyStack。 测试方法也可以用其他方式进行命名。 常量名 常量命名,全部使用大写字符,词与词之间用下划线隔开。(CONSTANCE_CASE)。 常量是一个静
7、态成员变量,但不是所有的静态成员变量都是常量。在选择使用常量命名规则给变量命名时,你需要明确这个变量是否是常量。例如,如果这个变量的状态可以发生改变,那么这个变量几乎可以肯定不是常量。只是计划不会发生改变的变量不足以成为一个常量。下面是常量和非常量的例子: 常量一般使用名词或者名词短语命名。 非常量的成员变量名 非常量的成员变量命名(包括静态变量和非静态变量),采用lowerCamelCas
此文档下载收益归作者所有