Java命名规范

JAVA源文件的命名:

JAVA源文件名必须和源文件中所定义的类的类名相同。

Package的命名:

Package名的第一部分应是小写ASCII字符,并且是顶级域名之一,通常是com、edu、gov、mil、net、org或由ISO标准3166、1981定义的国家唯一标志码。Package名的后续部分由各组织内部命名规则决定,最好以 . 来隔开 内部命名规则指定了各组件的目录名,所属部门名、项目名等。
针对刚使用IDEA,在src文件夹下建包后无法新建class文件,主要是因为包的命名不符合命名规则

Class/Interface的命名:

Class名应是首字母大写的名词。命名时应该使其简洁而又具有描述性。异常类的命名,应以Exception结尾

常量的命名:

常量名的字母应全部大写,不同的单词之间通过下划线进行连接,并且名字组合应该赋予含义。

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

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

方法的命名:

方法名的第一个单词应是动词,并且首字母小写,其它每个单词首字母大写。

方法参数的命名:

应该选择有意义的名称作为方法的参数名。如果可能的话,选择和需要赋值的字段一样的名字。

补充:

1、类名首字母应该大写。属性(成员变量)、方法、对象变量以及所有标识符(如形式参数、实际参数、局部变量)的首字母应小写,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。例如: 类名:ThisIsAClassName 属性或方法名:thisIsMethodOrFieldName 对象变量:thisIsAClassVariable

2、Java 包(Package 属于一种特殊情况,它们全都是小写字母,即便中间的单词亦是如此。对于全局包,将你的Internet 域名反转并接上包名。例如: cn.edu.usst.dingyuewei.package。 另外,package 行要在import 行之前,import 中标准的包名要在本地的包名之前,而且按照字母顺序排列。如果import 行中包含了同一个包中的不同子目录,则应该用 * 来处理。例如: package hotlava.net.stats; import java.io.; import java.util.Observable; import hotlava.util.Application; 这里 java.io. 是用来代替InputStream and OutputStream 的。

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

4、组件(Component): 使用完整的英文描述来说明组件的用途,末端应接上组件类型。例如:okButton,customerList,fileMenu。

5、类中常用方法的命名:
a) 类的获取方法(一般具有返回值)一般要求被方法名使用被访问字段名,前面加上前缀get,例如getFirstName(), getLastName()。

b) 类的布尔型的判断方法一般要求方法名使用单词 is 做前缀,如isPersistent(),isString()。或者使用具有逻辑意义的单词,例如equal 或equals

c) 类的设置方法(一般返回类型为void):被访问字段名的前面加上前缀 set,例如setFirstName(),setLastName(),setWarpSpeed()

d) 类的普通方法一般采用完整的英文描述说明成员方法功能,第一个单词尽可能采用一个生动的动词,第一个字母小写,例如 openFile(), addAccount()。

e) 构造方法应该用递增的方式写(比如:参数多的写在后面)。例如: public CounterSet(){} public CounterSet(int size){ this.size = size;}

f) toString 方法:一般情况下,每一个类都应该定义toString 方法,其格式为:public String toString() {…}

g) 一般应考虑置入一个main()方法,其中包含用于测试那个类的代码,如果包含了main() 方法, 那么它应该写在类的底部。

6、静态常量字段(static final)一般全部采用大写字母,单词之间用下划线分隔(也有特例,如Java 类库中关于颜色的常数没有严格地全部使用大写字母)。例如MIN_BALANCE,DEFAULT_DATE。

7、循环计数变量通常采用字母 i,j,k 或者 counter。而数组应该总是用下面的方式来命名:objectType[ ]或 byte[ ] buffer。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 模块命名、数据库表命名、域模型命名、各分层的类/方法命名、页面的命名; 模块命名: a. 包命名:com.project_name.module_name.action/service/dao/ws; service的实现都置于com.project_name.module_name.service.impl下; b. 接口命名遵守XxxxService,接口实现遵守XxxxServiceImpl; 2. 包的设计、页面的层次结构设计(jsp/css/js等文件的结构); 3. log、异常(声明式异常)的约定设计; 4. 链接、按钮、表单提交的统一方式;通用式Ajax调用与页面跳转统一模型; 5. 响应一个请求的分层结构约定,列举几个示例(常规调用、Ajax调用、WebService调用、提供WebService暴露、硬件设备接口调用); 6. 验证代码质量的约定,如JUnit、EMMA、FindBugs、CheckStyle、PMD的使用;Hudson持续集成需注意的; 7. 压力测试、防内存泄漏测试; 基础CSS:标签的各种状态的样式;表格单双行的样式; 开发一个Action请求的响应: 前置条件:该Action涉及的Entity及EntityName.hbm.xml已经准备好。 步骤: a. 前端页面触发Action的请求; 统一采用全路径请求,URL格式: 1> basePath/web/moduleName/*_ *.action {1}  EntityName,{2}  ActionMethodName 2> basePath/web/moduleName/gotoXxx.action (无需调用Service,直接跳转) 包括jQuery的Ajax方式和非Ajax方式; 包括表单提交; 参数设值的方式: 1> URL参数: basePath/web/moduleName/*_*.action?entity.propertyName=paramValue&paramName=paramValue 2> 或 另外,对于表单的提交,前后台都必须做数据校验,SWDF已提供了此能力,进行简单的配置即可,前台直接提供类似以下代码即可,点此查看前端校验详细规则说明。 前端校验示例; 后台数据校验,点此查看校验详细说明. b. 配置struts-moduleName.xml; 直接跳转示例; 调用Service示例; c. 开发对应的{EntityName}Action类; 该类必须继承com.hikvision.swdf.xx.BaseAction,该Action类有一个关键属性entity,即泛型Entity类的一个实体,该属性默认填充好了请求提交过来的entity对应参数(即entity.propertyName); d. 开发Service接口和Service接口实现,并在Action中通过set方法注入该Service; 接口文件:UserService 接口实现:UserServiceImpl 注入Service e. 开发DAO,DAO继承com.hikvision.xxx.HibernateBaseDAO; 示例 f. 配置applicationContext-*.xml; 配置DAO bean、Service Bean、Action Bean及注入的配置; g. 测试; 备注: 1. Action建议统一遵守通配符的约定,basePath/web/moduleName/*_ *.action {1}  EntityName,{2}  ActionMethodName 2. 统一命名规则:接口类似UserService,接口实现类型UserServiceImpl;(IUserService和UserServiceImpl) 开发一个Action调用关联应用提供的WebService 前置条件:该WebService?WSDL可正常获取 步骤: a. 配置applicationContext-wsclient.xml; Spring管理第三方WebService实例bean Jaxws-client配置代码 b. 生成第三方WebService接口文件;(提供系统自动生成) 自动生成代码 c. 页面调用Action请求,Action中注入WebService实例bean; Action对应方法直接调用第三方WebService的相关方法; d. 测试; 备注: 1. 步骤b,接口文件必须同包名同类名置于src目录下; 开发一个Action调用关联应用开放的HTTP请求 步骤: 1. 页面调用Action请求; 2. Action类相应方法使用封装好的HttpClient相关工具类,准备好HTTP请求的相关参数header参数和body参数并以xml的方式提交HTTP请求; 3. 解析该HTTP请求返回值(XML或JSON); 4. 响应结果; 5. 测试; 备注: 开发一个需要对第三方应用发布的WebService 步骤: a. 开发WebService接口,@WebService进行注解该接口; b. 开发WebService接口实现类,@WebService注解该实现类,并制定endpointInterface; c. 配置applicationContext-ws.xml d. 测试 备注: 开发一个需要对第三方应用发布的RESTful Service 步骤: a. 开发RS接口,提供如下Annotation; b. 开发RS接口实现,并提供如下Annotation; c. 配置applicationContext-rs.xml 备注: 所有Annotation的涵义解释如下:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值