java命名规范(整理互联网内容)

命名规范的重要意义:

1.一个软件的生命周期中,80%的花费在于维护

2.几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护

3.编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新的代码

4.如果你将源码作为产品发布,就需要确任它是否被很好的打包并且清晰无误,一如你已构建的其它任何产品

5.为来自不同的项目组或个人提供标准的代码格式。


Package的命名 (全部小写字母,中间可以由点分隔开

第一部分:应是小写ASCII字符,并且是顶级域名之一,通常是com、edu、gov、mil、net、org或由ISO标准3166、1981定义的国家唯一标志码。
后续部分:包名的后续部分根据不同机构各自内部的命名规范而不尽相同。
               这类命名规范可能以特定目录名的组成来区分部门(department),项目(project),机(machine),或注册名(login names)

例如:com.sun.eng

         com.apple.quicktime.v2

         edu.cmu.cs.bovik.cheese

一般公司命名为:

         com.公司名.项目名.模块名...

一般个人命名为:

          indi   个体项目,指个人发起,但非自己独自完成的项目,可公开或私有项目,copyright主要属于发起者

                    包名为:indi.发起者名.项目名.模块名...

         pers 个人项目,指个人发起,独自完成,可分享的项目,copyright主要属于个人

                    包名为:pers.个人名.项目名.模块名...

         priv  私有项目,指个人发起,独自完成,非公开的私人使用的项目,copyright属于个人

                    包名为:priv.个人名.项目名.模块名...

         team团队项目,指由团队发起,并由该团队开发的项目,copyright属于该团队所有

                    包名为:team.团队名.项目名.模块名...


类的命名 (单词首字母大写)

类名由名词或名词性词组(尽量使用名词),采用大小写混合方式,每个单词的首字母大写。尽量使你的类名简洁而富于描述。

         使用完整单词,避免缩写词除非该缩写词被广泛的使用         例如URLHTML         
         当要区别接口和实现类的时候,可以在类的后面加上"Impl"      例如:interface Container与class ContainerImpl
         Exception类用"Exception"做为类命名的结尾                          例如:DataNotFoundException
         抽象类用"Abstract"做为类命名的开头                                     例如:AbstractBeanDefinition,AbstractBeanFactory;
         Test类最好能用"Test"做为类命名的结尾                                  例如:ContainerTest


接口的命名 (与类的命名相同)
        采用完整的英文描述符说明接口封装,所有单词的第一个字母大写。习惯上,名字后面加上后缀 able, ible 或者 er。
        例如:Contactable,Prompter。 

方法的命名

方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头
例如:drawImage
        类的获取方法(一般具有返回值)一般要求被方法名使用被访问字段名,前面加上前缀get
                      例如:getFirstName(), getLastName()
        类的布尔型的判断方法一般要求方法名使用单词 is 做前缀
                      例如:isPersistent(),isString()。或者使用具有逻辑意义的单词,例如equal 或equals 
        类的设置方法(一般返回类型为void):被访问字段名的前面加上前缀 set
                      例如:setFirstName(),setLastName(),setWarpSpeed() 
        类的普通方法一般采用完整的英文描述说明成员方法功能,第一个单词尽可能采用一个生动的动词,第一个字母小写
      例如: openFile(), addAccount()。 

        构造方法应该用递增的方式写(比如:参数多的写在后面)

                      例如: public CounterSet(){} 

                                 public CounterSet(int size){ this.size = size;} 

        toString 方法:一般情况下,每一个类都应该定义toString 方法,其格式为:public String toString() {…} 
        一般应考虑置入一个main()方法,其中包含用于测试那个类的代码,如果包含了main() 方法, 那么它应该写在类的底部。 


常量的命名  (全部大写 ,常加下划线)
       常量的名字应该都使用大写字母,并且指出该常量完整含义。如果一个常量名称由多个单词组成,则应该用下划线来分割这些单词。 
       例如:MAX_VALUE

参数的命名(首字母小写,字母开头大写)

       参数的命名规范和方法的命名规范相同,而且为了避免阅读程序时造成迷惑,请在尽量保证参数名称为一个单词的情况下使参数的命名尽可能明确。


变量的命名

        普通变量  普通变量名的首字母小写,其它每个单词的首字母大写。命名时应该使其简短而又有特定含义,简洁明了的向使用者展示其使用意图。    

        主要的的命名规范有以下三种:
            Camel 标记法:首字母是小写的,接下来的单词都以大写字母开头
            Pascal 标记法:首字母是大写的,接下来的单词都以大写字母开头
            匈牙利标记法:在以Pascal标记法的变量前附加小写序列说明该变量的类型

                       在Java我们一般使用匈牙利标记法,基本结构为scope_typeVariableName,它 使用1-3字符前缀来表示数据类型,3个字符的前缀必须小写,前缀后面是由表意性             强的一个单词或多个单词组成的名字,而且每个单词          的首写字母大写,其它字 母小写,这样保证了对变量名能够进行正确的断句。例如,定义一个整形变量,用来             记录文档数量:intDocCount,其中int表明数据类型,后面为表 意的英文名,每个单词首字母大写。这样,在一个变量名就可以反映出变量类型和变量所存储的值的意义             两方面内容,这使得代码语句可读性强、更加容易理解。 byte、int、char、long、float、 double、boolean和short。

数据类型/前缀(附)
        byte b
char c
short sh
int i
long l
char c
string s
float f
double d
hashtable h
[] arr
List lst
Vector v
StringBuffer sb
Boolean b
Byte bt
Map map
Object ob

对于在多个函数内都要使用的全局变量,在前面再增加“g_”。例如一个全局的字符串变量:g_strUserInfo。

        约定变量  所谓约定变量,是指那些使用后即可抛弃(throwaway)的临时变量。通常i、j、k、m和n代表整型变量;c、d和e代表字符型变量。

注释

// 注释一行
/* ...... */ 注释若干行

Javadoc注释

Java除了可以采用我们常见的注释方式之外,Java语言规范还定义了一种特殊的注释,也就是我们 所说的Javadoc注释,它是用来记录我们代码中的API的。Javadoc注释是一种多行注释,以/**开头,而以*/结束,注释可以包含一些 HTML标记符和专门的关键词。使用Javadoc 注释的好处是编写的注释可以被自动转为在线文档,省去了单独编写程序文档的麻烦。 
例如:

/** 
* This is an example of 
* Javadoc 
* @author darchon 
* @version 0.1, 10/11/2002 

*/

@author 标明开发该类模块的作者 
@version 标明该类模块的版本 
@see 参考转向,也就是相关主题 
@param 对方法中某参数的说明 
@return 对方法返回值的说明 
@exception 对方法可能抛出的异常进行说明 






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值