JAVA编码规范2
java编码规则
java编码规则(最新版)目录1.Java 编码规范简介2.Java 编码的基本规则3.Java 编码的进阶规则4.Java 编码的特殊规则5.Java 编码规范的实际应用正文【Java 编码规范简介】Java 编码规范,是指在编写 Java 程序时遵循的一种编码风格和规则。
遵循 Java 编码规范,可以提高代码的可读性、可维护性和可扩展性,从而提高软件开发的效率和质量。
【Java 编码的基本规则】1.遵循统一的编码风格:整个项目或团队应该遵循统一的编码风格,如缩进、空格、换行等。
2.使用有意义的命名:变量、方法、类等命名应该具有明确、简洁、描述性强的特点。
3.合理使用注释:对于复杂的代码、算法等,应该使用注释进行解释说明,提高代码的可读性。
4.遵循面向对象编程原则:尽量使用封装、继承、多态等面向对象编程原则,提高代码的可扩展性和可维护性。
【Java 编码的进阶规则】1.遵循接口隔离原则:不应该强迫客户端依赖于它们不使用的方法,应该尽量减少非抽象类和接口中的方法数量。
2.遵循依赖倒置原则:高层模块不应该依赖于低层模块,二者都应该依赖于抽象。
3.遵循单一职责原则:类应该有明确的职责,应该只有一个原因改变。
【Java 编码的特殊规则】1.异常处理:应该正确处理异常,避免出现未处理的异常。
2.集合使用:应该正确使用集合,避免出现空指针、越界等错误。
3.多线程编程:应该正确使用多线程编程,避免出现死锁、资源竞争等问题。
【Java 编码规范的实际应用】遵循 Java 编码规范,不仅可以提高代码的质量,还可以提高团队的开发效率,降低维护成本。
java 编码规则
java 编码规则
Java编码规则是指在编写Java程序时需要遵循的一系列规范和约定,旨在提高代码的可读性、可维护性和可扩展性。
下面是一些常见的Java编码规则:
1. 代码缩进:使用四个空格进行缩进,不要使用制表符。
2. 代码行长度:每行代码尽量不超过80个字符,超过时可以换行。
3. 命名规范:使用驼峰命名法,即首字母小写,后面每个单词的首字母大写。
4. 类名:类名使用名词或名词短语,首字母大写。
5. 方法名:方法名使用动词或动词短语,首字母小写。
6. 变量名:变量名使用名词或名词短语,首字母小写。
7. 常量名:常量名应全部大写,并用下划线分隔单词。
8. 注释:为代码添加适当的注释,解释代码的用途、实现细节等。
9. 空格使用:在运算符两侧、逗号后面、冒号后面等地方使用空格,增加代码的可读性。
10.代码格式化:使用合适的缩进、空行、大括号等格式化代码,以增强可读性。
遵循这些Java编码规则可以使你的代码更易于理解和维护。
此外,还可以使用一些静态代码分析工具来自动检查代码是否符合编码规范,如Checkstyle、FindBugs等。
编码规则的遵守不仅仅是个人习惯的问题,也是一个团队合作的重要环节,通过统一的编码规范可以提高代码的一致性,方便开发人员的协作和项目的维护。
java编码规范
1范围2规范性引用文件3定义和缩略语4文件组织4.1 文件结构规则4-1-1:包名只允许使用小写字母,包命名格式如下:“倒置的公司域.产品名.模块名”,模块名可以根据产品结构划分为多级模块。
如:package com.h3c.xlog.nta.dao;规则4-1-2:Java源代码文件使用‘src’作为一级目录,按照包名成树状目录结构存放。
如:…\src\com\h3c\xlog\nta\dao\Sample.java规则4-1-3:Java源代码文件名与类名相同4.2 文件格式标准Java源代码文件头格式如下/*** Copyright (c) 2007,Hangzhou H3C Technologies Co.,Ltd.All rights reserved.* </* ...........................................................................* Product :iMC V300R002* Module Name;* Date Created:YYYY-MM-DD* Creator:* Description;** ...........................................................................* Modification History* DATE NAME DESCRIPTION* ..........................................................................* YYYY-MM-DD John XXXX project,new code file.** .........................................................................*/规则4-2-1:任何一个代码源文件必须包含有标准的文件头,且其中的文件名、产品、日期、作者等内容填写完整。
Java 程序编码规范
Java 程序编码规范(初学者要牢记)所有的程序开发手册都包含了各种规则。
一些习惯自由程序人员可能对这些规则很不适应,但是在多个开发人员共同写作的情况下,这些规则是必需的。
这不仅仅是为了开发效率来考虑,而且也是为了后期维护考虑。
命名规范定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,减少项目组中因为换人而带来的损失。
(这些规范并不是一定要绝对遵守,但是一定要让程序有良好的可读性)Package 的命名Package 的名字应该都是由一个小写单词组成。
Class 的命名Class 的名字必须由大写字母开头而其他字母都小写的单词组成Class 变量的命名变量的名字必须用一个小写字母开头。
后面的单词用大写字母开头。
Static Final 变量的命名Static Final 变量的名字应该都大写,并且指出完整含义。
参数的命名参数的名字必须和变量的命名规范一致。
数组的命名数组应该总是用下面的方式来命名:byte[] buffer;而不是:byte buffer[];方法的参数使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字:SetCounter(int size){this.size = size;}Java 文件样式所有的Java(*.java) 文件都必须遵守如下的样式规则版权信息版权信息必须在java 文件的开头,比如:/*** Copyright ? 2000 Shanghai XXX Co. Ltd.* All right reserved.*/其他不需要出现在javadoc 的信息也可以包含在这里。
Package/Importspackage 行要在import 行之前,import 中标准的包名要在本地的包名之前,而且按照字母顺序排列。
如果import 行中包含了同一个包中的不同子目录,则应该用* 来处理。
package .stats;import java.io.*;import java.util.Observable;import hotlava.util.Application;这里java.io.* 使用来代替InputStream and OutputStream 的。
JAVA编码规范
if (abc) {
}
for (int i = 0; i < 10; ++i) {
}
do {
} while (false);
try {
} catch (IOException e) {
} finally {
}
3.2 类命名不得使用拼音, 不得使用 My New Test 等无意义的词,要求类名见名知义。
3.3 类合理分包,如 cn.neiwang.emm.ui 中仅应放界面相关的类,不应该放日志模块。
3.4 package 行和 import 行间有且仅有一个空行。 import 结束和 类、接口的开始有且仅有一个空行。
Java编程规范
总体规则
(1) java 代码不得使用IDE自带的格式化,应该仅依赖于编码者去组织。
(2) 源码文件一律使用utf-8编码
(3) 不得因引用的包未使用、变量未使用等问题产生代码警告。
(4) 会显示在任意界面上的字符串严禁硬编码在java代码中,应由资源提供(国际化)
1. 基本规范
e.g.:
String fileName = userInfo.getFileName();
而不是:
String filename = userInfo.getFileName();
也不是:
String file_name = userInfo.getFileName();
1.9 不省略大括号。
e.g.:
if (sucess) {
return true;
}
而不是
if (sucess)
java编码规则
java编码规则【实用版】目录1.Java 编码规范概述2.Java 编码规则详解2.1 命名规范2.2 注释规范2.3 代码格式化2.4 控制结构2.5 数据类型及操作2.6 异常处理2.7 类与对象2.8 接口与继承2.9 泛型2.10 集合框架2.11 多线程正文【提纲】详解1.Java 编码规范概述Java 编码规范,顾名思义,是指在编写 Java 程序时遵循的一系列规则和约定。
这些规范旨在提高代码的可读性、可维护性和可扩展性,帮助开发者编写出高质量的 Java 代码。
Java 编码规范主要涵盖了命名规范、注释规范、代码格式化、控制结构、数据类型及操作、异常处理、类与对象、接口与继承、泛型、集合框架和多线程等方面。
2.Java 编码规则详解2.1 命名规范Java 命名规范主要包括以下几方面:- 类名、接口名和枚举常量名应使用驼峰命名法,即每个单词的首字母大写,除第一个单词外。
- 方法名和变量名应使用驼峰命名法,但第一个单词的首字母小写。
- 常量名应使用大写字母和下划线组合。
- 注释名应以双斜杠(//)开头。
2.2 注释规范注释是程序员对代码的解释和说明,有助于提高代码的可读性。
Java 注释规范要求:- 单行注释以双斜杠(//)开头。
- 多行注释以斜杠星号(/*)开头,以星号斜杠(*/)结尾。
- 注释应简洁明了,避免过多冗余。
2.3 代码格式化代码格式化是指按照一定的风格对代码进行排版,以提高代码的可读性。
Java 代码格式化要求:- 每行代码的长度不超过 80 个字符。
- 语句之间留有空格,以提高可读性。
- 适当的换行和缩进,使代码结构更清晰。
2.4 控制结构Java 控制结构包括条件语句、循环语句和分支语句等。
控制结构应简洁明了,避免过于复杂的逻辑。
2.5 数据类型及操作Java 数据类型包括基本数据类型和引用数据类型。
数据类型操作应遵循以下规范:- 变量应在使用前初始化。
- 避免使用未初始化的变量。
Java编码规范
目录1、规范说明 (2)1.1)文档状态 (2)1.2)规范简介 (2)2、命名规则 (2)2.1)一般的命名规则 (2)2.2)标识符命名 (2)3、文档注释 (4)3.1)注释原则 (4)3.2)注释类型表 (5)3.3)注释规则表 (5)3.4)Javadoc规则 (6)4、JAVA文件样式 (7)5、代码编写格式 (11)6、程序规范 (13)6.1)保证程序的健壮性(必须做的) (13)6.2)提高代码效率的做法(尽量做的) (16)6.3)其他要注意的做法(推荐做的) (17)7、JSP补充规范 (19)7.1)程序代码规范 (19)7.2)文件命名和路径存放 (19)7.3)编码注意事项 (19)8、日志和调试信息 (20)8.1)为什么要使用调试信息和日志 (20)8.2)使用Log4j进行日志操作 (20)1、规范说明1.1)文档状态本版本:V ersion1.0 Java编码规范.doc分发:公司研发部可以不受任何限制地分发1.2)规范简介简介:本标准描述了所有基本Java编程应该遵循的规范,涉及到命名规则、代码格式及编程规则(建议)。
这里“基本Java编程”指的是编写Java Beans,Applet,Application,Servlet,JSP,EJB 中的Class,Interface等。
相应的辅助编程标准(如:EJB编程规范)请阅读其它编程标准。
为什么要制定规范?所有的程序开发手册都包含了各种规则。
一些习惯自由程序人员可能对这些规则很不适应,但是在多个开发人员共同写作的情况下,这些规则是必需的。
这不仅仅是为了开发效率来考虑,而且也是为了后期维护考虑。
定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,减少项目组中因为换人而带来的损失。
(这些规范并不是一定要绝对遵守,但是一定要让程序有良好的可读性)适用范围:本规范使用公司内部使用Java语言进行开发的过程。
Java代码编码规范
CodeConventions.代码格式化样式,请分别使用“codeformatter.xml”和“ codetemplates.xml”。 在导入这两个文件到Eclipse中之前,请首先修改“codetemplates.xml”文件,替换其中“ Yourname”为代码作者的名字(即:你的名字),从而明确代码的责任和贡献。
编号 1 2 3 4
5
6 7 8
9
10
11
12 13
14 15 16
17
代码编写规范基本内容 新增代码包名全部由小写的单词或缩写组成,包名前缀com.zznode,后续包名以子系统开始,如 com.zznode.ipnm.fm,更下一级包名由设计决定. 配置文件均采用XML文件,因应国际化要求,均采用UTF-8字符集.服务器端配置文件均置于 E2E_HOME相对目录下,以子系统名为子目录,如$E2E_HOME/fm.一个配置文件只能出现一次文件打 开读取代码,不允许多处打开关闭. 服务器端日志信息、控制台打印信息均采用基于log4j的e2elog, 按照log4j把信息类别分重要级 别,配置文件为log4j.xml. 国际化为本系统的既定原则,采用i18n规范,所有子系统、代码、配置文件均需要遵守,所有字符 串,配置文件均采用UTF-8字符集.用户界面上的国际化采用struts1.2的方式进行;服务器后台的 日志内容,全部都使用英文输出. 类名由大写字母开头的单词或缩写组成,禁用下划线; static final 常量的名字应该都大写,并且指出完整含义,单词之间用下划线分隔(惯用用法除 外); 初始化变量时,应集中在一起,尤其是static类型; 变量名称应符合见名知义的原则,且首单词首字母小写,其它单词首字母大写,不推荐使用下划线; 原则上,局部变量不允许与成员变量重名;如有重名,成员变量应以“this.”为前缀修饰; 方法名称应以小写动词开头,后面的单词符合首字母大写的规定; 方法名称中的动词要符合成对使用的习惯,如get/set,add/remove等 异常信息必须带有详细的错误码。异常Message分两段组成:概要信息和详细信息.一个Exception java类有唯一的概要信息,以该异常类抛出异常时,组织详细的异常信息.如ClassCastException: uniregister.EJBClient; 按照 Javadoc 要求的风格为包、类、变量等写注释,包括 private 变量、函数。对方法进行注释 时,必须标明参数、返回值、异常等信息.Javadoc注释采用中文编写. 单行注释不要写在语句的结尾,而应写在语句的上一行; 暂时不用但又不宜删除的代码,用批量注释符号注释:/* „ */(注意:不是 /** „ */); 10行代码以内应至少有一句行注释.("{","}"不计为代码行); 方法之间,应该有空行分隔; 10行以上密集代码必须有空行,并加行注释; 块逻辑结束处必须有空行; 一个文件不能太长(不要超过2000行); 一个函数保持在50行以内,不要超过100行. 代码简单明了,能用for,就不用while, 千万别用do while和goto; 通常用“i, j, k”作循环变 量. 确实需要代码嵌套的就用for 吧,注释要清楚了,不要出现如if,if,if,if,while,while, switch,switch.的层层嵌套; switch case中,原则上每个case要执行的内容超过5行时以私有函数封装替代; 在循环语句中,从性能角度不得出现类似于“for (int i = 0; i < list.size(); i++)”的情况; 公有重要功能类必须有单元测试代码, 单元测试的类的命名规则为: com.zznode.e2e.log.LogClient,并相对于src目录,放在test目录中。 所有公有类的公有函数均需要覆盖单元测试,要嘛就用private; 不是主程序,不要出现main函数,如果需要,写在单元测试代码中去。 时刻牢记面向接口编程,能返回接口类型的不要返回强约束类; 在用到外部包时用import 导入,不得出现类似于“java.util.List listData ”的情况 数据库访问考虑数据库类型无关,该配置的就通过配置文件配吧,别写死了; 采用标准的SQL语句,非标准SQL需要详细注释; 写数据考虑用PrepareStatement替代Statement, 不能替代的,说明理由;取值时用索引顺序,而不 是字段名称; 使用集合类型时要慎重选择,List,Map,Set,都是很占用内存的,作为成员变量时要考虑该类对象的 数据量,能用LinkedList就别用ArrayList,因为前者内存是缓慢增长; 返回值类型应尽量用接口类,如返回 Map,而不是HashMap; 返回值千万不要是null, 返回Collections.EMPTY_LIST代替。 慎重使用递归算法. 遵守业界推行的编码规范,如:Sun Microsystem的“Java Code Conventions”(请参考文件“ CodeConventions.pdf”)。
java 编码规范
java 编码规范《Java编码规范》1. 代码风格- 代码缩进:使用4个空格进行缩进,不使用制表符。
- 行长限制:每行代码不超过80个字符,超出则进行换行。
- 行尾空格:行尾不留空格。
- 行尾注释:行尾注释与代码之间至少保留2个空格的距离。
- 命名规范:使用驼峰命名法,类名首字母大写,变量和方法名首字母小写。
- 常量命名:常量使用全大写字母,并用下划线分隔单词。
- 空行:类与方法之间保留一个空行,方法内逻辑块之间保留一个空行。
2. 注释规范- 文件注释:每个源文件的头部必须包含文件注释,说明该文件的作者、日期等信息。
- 类注释:每个类的头部必须包含类注释,描述该类的作用、用法等。
- 方法注释:每个方法必须包含方法注释,描述该方法的功能、参数、返回值等。
- 代码注释:在代码中需要加入注释说明的地方,添加合理的注释来增加代码可读性。
3. 包和导入规范- 包名规范:包名全部小写,多个包名之间用英文句点"."分隔,采用反域名形式命名。
- 导入规范:不要使用通配符"*"导入整个包,应明确导入所需的类。
4. 类和接口规范- 类结构顺序:依次按照成员变量、构造方法、普通方法的顺序来编写类的结构。
- 成员变量声明:先声明公有的静态常量,再声明私有的静态变量,接着声明私有的实例变量。
- 构造方法:在类的开头部分声明构造方法,按照方法名和参数顺序进行编写。
- 方法和变量:局部变量应放在使用的最近位置上,避免声明太早或太迟,增加代码的可读性。
5. 异常处理规范- 异常的捕获和处理:在可能发生异常的地方进行捕获和处理,而不是简单地将异常抛出给上层调用者。
- 不要捕获并忽略异常:捕获异常后应该进行适当的处理,而不是简单地将异常信息打印出来或者忽略它们。
6. 标准化代码结构- 采用分层结构:将代码按照功能、模块进行划分,每个模块或类负责一部分功能。
- 逻辑清晰:保持代码逻辑清晰,避免重复、冗余的代码,使用合适的设计模式来优化代码结构。
JAVA编码规范
JAVA编码规范修订记录版本版本日期修订者修订说明V1.0 2010-07-07 那建林创建V1.1 2010-07-23 那建林添加实例V1.2 2010-07-24 陈晔校正、排版、发布目录1前言 (3)1.1 目的 (3)2Java编码通用规则 (3)2.1 命名 (3)2.1.1包(Package) (3)2.1.2类(Class) (3)2.1.3字段(field) (4)2.1.4静态常量字段(static final field) (4)2.1.5局部常量(local variable) (4)2.1.6方法(method) (4)2.1.7参数(parameter) (4)2.1.8集合(Collection) (5)2.2 代码风格 (5)2.2.1文件注释 (5)2.2.2包和导入声明 (5)2.2.3换行和缩进 (5)2.2.4代码块 (5)2.2.5类和接口 (6)2.2.6字段 (6)2.2.7方法 (6)2.2.8 判断、循环、异常处理语句 (7)2.2.9 运算符 (8)2.2.10 数组 (8)2.3 程序编写 (8)2.3.1 异常处理 (8)2.3.2 状态判断 (9)2.3.3 工具类 (9)2.3.4 System.out和System.err (9)2.3.5 静态方法 (10)2.3.6 StringBuffer (10)2.3.7 代码复用 (10)2.3.8 垃圾回收 (10)1 前言1.1 目的代码质量的好坏关系到将来代码的维护、性能、可移植性等问题,文中指出了开发人员常犯的影响代码质量的错误,并举例供程序员使用以防止类似的错误发生,并减少将来用于程序诊断及优化的时间。
同时,良好的编码习惯有助于标准化程序的结构和编码风格,使源代码对于自己和别人都易读和易懂。
在开发周期中越早使用恰当的编码规定,将会最大程度的提高项目的生产率。
良好的编码习惯除了代码格式,详细的注释外,还应该包括使用有助于提高程序效率的编码方式。
java编码规范
开发过程中,建立JAVA开发规,统一JAVA代码的编码风格,可以增加清晰性和可阅读性,便于走查和维护!一工程编码建议工程名表意明确工程工程编码格式使用UTF-8文件的编码类型统一为UTF-8二开发编码规2.1 排版规要求2.1.1 缩进风格规那么:代码采用缩进风格,tab用4个空格替代。
代码中防止使用tab。
说明:用不同的编辑器阅读程序时,因TAB键所设置的空格数目不同而造成程序布局不整齐。
在eclipse和myeclipse中可以设置tab转换为空格。
配置方法如下:〔1〕点击window -> preferences ->General -> Editors -> Text Editors ,设置如下界面中红色标记容。
2.1.2 分界符2.2.2.1 大括号{}规那么1:大括号与if, else, for, do, while语句一起使用,即使只有一条语句(或是空),也应该把大括号写上。
例如:规那么2:左大括号前不换行,左大括号后换行,右大括号前换行如果右大括号是一个语句、函数体或类的终止,那么右大括号后换行; 否那么不换行。
例如,如果右大括号后面是else,catch或逗号,那么不换行。
例如:一个空的块状构造里什么也不包含,大括号可以简洁地写成{},不需要换行,如构造函数等2.2.2.2 空格规那么1:除方法的声明和调用外,小括号前一定要有一个空格。
规那么2:分隔任何保存字与紧随其后的左括号(如if, for catch等。
规那么3:分隔任何保存字与其前面的右大括号}如else, catch。
规那么4:在任何左大括号前{ 要有空格规那么5:在任何二元或三元运算符的两侧。
这也适用于以下“类运算符〞符号:类型界限中的&(<T extends Foo & Bar>)。
规那么6:在, : ;及右括号)后要有一个空格规那么7:声明变量时,在类型和变量之间要有一个空格,如int number。
Java 语言编码规范
Java语言编码规范目录一、规范简介 (1)1目的 (1)2范围 (1)3参考文档 (1)4说明 (1)二、 JAVA编码规范 (1)2缩进排版(I NDENTATION) (2)2.1 行长度(Line Length) (2)3注释(C OMMENTS) (2)4声明(D ECLARATIONS) (3)4.1 每行声明变量的数量(Number Per Line) (3)4.2 初始化(Initialization) (3)5空白(W HITE S PACE) (3)5.1 空行(Blank Lines) (3)5.2 空格(Blank Spaces) (4)6命名规范(N AMING C ONVENTIONS) (4)7性能考虑 (5)7.1 使用 StringBuffer 对象 (5)7.2 可移植性 (5)7.3 换行 (5)7.4 PrintStream (6)三、JSP编码规范 (6)四、SERVLET编码规范 (7)五、JSP和SERVLET编程注意事项 (7)六、代码范例(CODE EXAMPLES) (7)一、规范简介1 目的制订本规范的目的是为培养规范设计和编程,养成良好的习惯,增强JAVA类软件产品的稳定、健壮、可靠性;同时也为提高软件的可读性,可以让程序员尽快而彻底地理解新的代码,使产品可维护性提高而制定的强制性规范,同时也是代码复审的依据。
2 范围本规范适用于公司JAVA类代码(包括JSP)的代码编写标准。
适用于代码编写阶段和代码维护阶段。
3 参考文档《SUN JAVA代码编写规范》。
4 说明本文档包括java编码规范,jsp编码规范,servlet编码规范。
struts代码规范请参阅《struts编码规范.doc》。
二、java编码规范1.1.1 开头注释(Beginning Comments)所有的源文件都应该在开头有一个Java语言风格的注释,其中列出标题、描述、日期和版权声明:/*** <p>Title: 标题</p>* <p>Description: 描述</p>* <p>Copyright: Copyright (c) 2007</p>* <p>Company:华胜天成</p>* @author: 张三* @version 1.0*/1.1.2 包和引入语句(Package and Import Statements)在多数Java源文件中,第一个非注释行是包语句。
java编码规则
Java编码规则是指在编写Java代码时应该遵循的一些规范和约定。
这些规则可以帮助开发者提高代码的可读性、可维护性和可扩展性。
以下是一些常见的Java编码规则:
1. 命名规范:类名使用大写字母开头的驼峰式命名法,方法名和变量名使用小写字母开头的驼峰式命名法。
2. 缩进规范:每个缩进级别使用4个空格,而不是制表符,这样可以避免在不同的编辑器中出现不同的缩进距离。
3. 注释规范:每个类和方法都应该有文档注释,说明它们的作用、参数、返回值和异常等信息。
同时,对于复杂的代码块也应该添加注释。
4. 包命名规范:包名应该全部使用小写字母,并且应该基于域名反转命名。
例如,com.example.app。
5. 文件命名规范:类文件应该与类名相同,并使用驼峰式命名法。
例如,MyClass.java。
6. 代码风格规范:代码应该按照一定的风格排列,例如在每个方法之间应该有空行,在每个语句结束时应该使用分号,在括号周围不应该有空格等。
7. 异常处理规范:对于可能抛出异常的代码块,应该使用try-catch语句或者声明抛出异常。
同时,应该在捕获异常时至少打印异常信息。
8. 安全性规范:应该避免使用不安全的函数,例如eval()和exec()
等,应该使用安全的函数或者自己实现安全策略。
9. 性能规范:应该尽可能地优化代码,例如避免使用不必要的对象、减少方法调用次数等。
以上是一些常见的Java编码规则,当然还有很多其他的规则可以根据需要进行补充和完善。
java编码规范
java编码规范Java编码规范是为了提高代码的可读性、可维护性和可重用性而制定的规范。
本文将向您介绍一些常见的Java编码规范,以帮助您编写高质量的Java代码。
1. 命名规范- 类名使用大写开头的驼峰命名法,例如`MyClass`。
- 方法名使用小写开头的驼峰命名法,例如`myMethod`。
- 变量名使用小写的驼峰命名法,例如`myVariable`。
- 常量名使用全大写并用下划线分隔单词,例如`MAX_SIZE`。
- 包名使用全小写并用点分隔单词,例如`com.example.myapp`。
2. 注释规范- 类、方法和变量前应添加注释,说明其作用和用法。
- 可以使用`//`进行行注释,例如:`// This is a comment`。
- 可以使用`/* */`进行块注释,例如:```/** This is a block comment* It can span multiple lines*/```- 每个文件应包含版权信息和作者信息的注释。
3. 缩进规范- 使用4个空格进行缩进,不使用制表符。
- 每个代码块应该有一个缩进级别。
4. 括号规范- 左括号应该在语句或声明的同一行,并在后面加上一个空格。
- 右括号应该独占一行。
```if (condition) {// code here}```5. 空格规范- 在二元运算符之间、逗号之后和分号之后应添加一个空格。
- 在关键字和左括号之间、左括号和参数之间、方法名和左括号之间不应有空格。
6. 异常处理规范- 在可能引发异常的代码周围使用`try-catch`块来处理异常。
- 在`catch`块中处理异常,不要简单地打印异常信息。
- 在方法声明中使用`throws`关键字指定可能抛出的异常。
7. 包规范- 包名应该反映代码的层次结构和功能。
- 不要使用Java的保留关键字作为包名。
8. 导入规范- 不要使用通配符导入,应该明确导入需要使用的类。
JAVA编码规范
Java编码规范一、命名规范1. 类名首字母应该大写。
属性(成员变量)、方法、对象变量以及所有标识符(如形式参数、实际参数、局部变量)的首字母应小写,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。
例如:类名:ThisIsAClassName 属性或方法名:thisIsMethodOrFieldName对象变量:thisIsAClassVariable2. Java 包(Package)属于一种特殊情况,它们全都是小写字母,即便中间的单词亦是如此。
对于全局包,将你的Internet 域名反转并接上包名,例如:pany.package另外,package 行要在import 行之前,import 中标准的包名要在本地的包名之前,而且按照字母顺序排列。
如果import 行中包含了同一个包中的不同子目录,则应该用* 来处理。
例如package .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. 类中常用方法的命名:类的获取方法(一般具有返回值)一般要求被方法名使用被访问字段名,前面加上前缀get,如getFirstName(), getLastName()。
类的布尔型的判断方法一般要求方法名使用单词is 做前缀,如isPersistent(),isString()。
指南_JAVA编码规范
北京农商银行信息技术部软件开发规范JAVA编码规范文档修订记录*变化状态:C = 创立,A = 增加,M = 修改,D = 删除文档审批信息目录1 目的 (4)2 编码基本要求 (4)2.1 基本要求 (4)2.2 可读性要求 (4)2.3 结构化要求 (5)2.4 正确性与容错性要求 (5)2.5 可重用性要求 (5)3 Java语言 (6)3.1 程序设计标准 (6)3.1.1 通用命名约定 (6)3.1.2 注释 (13)3.2 源文件内容 (15)3.2.1 文件长度 (16)3.2.2 文件头注释部分 (16)3.2.3 包及引入部分 (17)3.2.4 类及接口定义部分 (17)3.3 数据 (24)3.4 建议 (25)3.4.1 使用StringBuffer 对象 (25)3.4.2 避免太多的使用synchronized 关键字 (25)3.4.3 避免使用java.util.Vector 类 (25)3.4.4 尽量使用接口而不是一个具体的类 (25)3.4.5 避免使用索引来调用数据库中间层组件返回的结果集 (26)3.5 最佳实践 (26)3.5.1 先写注释再写程序 (26)3.5.2 在文档注释中加入HTML标记 (27)3.5.3 尽量在源文件的主类中加入main方法 (27)3.5.4 对每种类型的类写出一个模板 (27)3.5.5 尽量不要使用公共的类变量 (27)3.5.6 使用Type[] arrayName而不要使用Type arrayName[] (27)3.5.7 对于对象的比较慎用==,使用Object.equals()方法 (28)1目的规范代码编写风格,减少因为编码的不规范而引起的错误,使软件产品最终代码保持一致性。
本编码规范为通用的编码规范,每个项目或是产品在实施时可以根据自身的特点进行剪裁和添加。
2编码基本要求2.1基本要求●程序结构清晰,简单易懂,单个函数的程序行数不宜过长。
Java编码规范
文件名称:Java编码规范生效日期:2010年6月18日目录1 基本原则............................................................. 2命名规则(Naming Conventions).......................................项目(Project)(视不同的开发工具)............................包(Package).................................................类(Class)...................................................属性(Property)..............................................方法(Method)................................................常量/宏(Constant & Macro)...................................变量(Variable).............................................. 3代码格式(Language Statement).......................................文件/文件组织(File Organization)............................包&包含(Package and Import).................................行长度/页宽(Line Length)....................................换行(Wrapping Lines)........................................空白(White Space)...........................................缩进(Indent)................................................括号(Bracket)...............................................异常&返回(Exception & Return Code)..........................注释(Comments)..............................................块注释.....................................................单行注释...................................................末尾注释...................................................行尾注释...................................................其他注释规则............................................... 声明.......................................................... 语句..........................................................修订记录Revision Record1基本原则基本原则为编程时应该坚持的指导思想。
Java项目编码规范
备注
3
布局
4 5 6
7 8
注释
9
所有的 Java文件都应该在类定义前编写类注释, 注释包括了类名, 版本 ,日期和版权提示 比较复杂的代码段需要描述它的实现原理,且不要以直接翻译代码 的形式描述。 恰当的使用四种样式的实现注释: 块, 单行, 尾, 和行尾注释 例如: 块注释 /* * This is a block comment. * Each line is preceded by an asterisks. */ 单行注释 if (condition) { /* Short description about the following statments */ statements; } 尾注释 if (condition) { stateme; // 注释
10
每个声明应该单独占一行并必须由一个尾注释. 使用tabs分隔开来 数据类型,标识符,和注释字段例如: int level; // indentation level int size; // size of table Object currentEntry; // currently selected table entry 命名惯例 类名要简单准确. 避免使用不易理解的缩写词和缩写符,由名词组成, 每个单词的第一个字母大写,例如:StringBuffer,Vector。 建议在某写特定类型的类名后加上该类型的说明,以便让类的使用 者一目了然。 例如:Applet——UnitDetachApplet Servlet——UnitDetachServlet Dialog——CardAssQueryDialog 接口名使用与类名一样的单词首字母大写规则 方法名应该为动词或动词短语,使用多个单词场合的时候第一个单 词的第一个字母小写,其他单词的第一个字母大写. 例: run(); isUpperCase(); getBackground(); findTotalCost(int Years);
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
包和引入
• 在多数Java源文件中,第一个非注释行是包语句行。在它之后可以跟 引入语句。例如: • package java.awt; • import java.awt.peer.CanvasPeer
火龙果·整理
排版缩进
• 4个空格常被作为缩进排版的一个单位(一个制表符)。
火龙果·整理
编程惯例
• 引用类变量和类方法 : • classMethod(); // OK • AClass.classMethod(); // OK • anObject.classMethod(); // AVOID!
火龙果·整理
常量
• 位于for循环中作为计数器值的数字常量,除了-1,0和1之外,不应被 直接写入代码。 • for (int i = 0; i < 1; i++) { • • }
火龙果·整理
空白
• • • • • • • • 空行将逻辑相关的代码段分隔开,以提高可读性。 下列情况应总是使用两个空行: ◆ 一个源文件的两个片段(section)之间。 ◆ 类声明和接口声明之间。 下列情况应该总是使用一个空行: ◆ 两个方法之间。 ◆ 方法内的局部变量和方法的第一条语句之间。 ◆ 一个方法内的两个逻辑段之间,用以提高可读性。
火龙果·整理
变量赋值
• • • • • • • • • • • • 避免在一个语句中给多个变量赋相同的值。它很难读懂。 int i,j; i = j = 3; 不要将赋值运算符用在容易与相等关系运算符混淆的地方: if (c++ = d++ != 0) { // AVOID! (Java disallows) d = (a = b +c) + r; // AOVID! } >> if ((c++ = d++) != 0) { // AVOID! (Java disallows) a = b + c; d = a + r; }
火龙果·整理
命名规范:类
• 类名是一个名词,采用大小写混合方式,每个单词的首字母大写。尽 量使你的类名简洁而富于描述。使用完整单词,避免缩写词(除非该 缩写词被广泛的使用,如URL,HTML)。 • 例如: • class Raster • class ImageSprite • class HTTPReader
火龙果·整理
注释
• Java程序有两类注释,实现注释(implementation comments)和文档 注释(document comments): • 实现注释使用/*…*/和//界定的注释,用以注释代码或实现细节 。 • 文档注释(被称为“doc comments”)是Java独有的,并由/**…*/界定, 描述代码的规范 。 • 文档注释可以通过javadoc工具转换成HTML文件。
火龙果·整理
返回值
• if (booleanException) { • return true; • else { • return false; • } • 应该代之以如下方法: • return booleanException; • 类似地: • if (condition) { • return x; • } • return y; • 应该写为: • return (condition ? x : y);
火龙果·整理
行长度
• 尽量避免一行长度超过80个字符。注意:用于文档时应该使用更短的 行长,长度一般不超过70个字符。
火龙果·整理
换行
• • • • • 当一个表达式无法容纳在一行内时,可以依据如下一般规则断开之: ◆ 在一个逗号后面断开。 ◆ 在一个操作符前面断开。 ◆ 新的一行应该与上一行同一级别表达式的开头处对齐。 ◆ 如果以上规则导致你的代码混乱或者使你的代码都堆挤在右边, 那就代之以缩进8个空格。 • 以下是断开方法的一些例子:
火龙果·整理
实现注释:单行注释
• 短注释可以显示一行内,并与其后的代码具有一样的缩进层级。如果 一个注释不能在一行内写完,就该块注释(参见“块注释”)。单行注 释之前应该有一个空行。以下是一个Java代码中单行注释的例子:
火龙果·整理
Байду номын сангаас
实现注释:尾端注释
• 极短的注释可以与它们所要描述的代码位于同一行,但是应该有足够 的空白来分开代码和注释。若有多个短注释出现于大段代码中,它们 应该具有相同的缩进。 • 以下是一个Java代码中尾端注释的例子:
火龙果·整理
圆括号
• 一般而言,在含有多种运算符的表达式中使用括号来避免运算符优先 级问题,是个好方法。即便运算符的优先级对你而言可能很清楚,但 对其他人未必如此。你不能假设别的程序员和你一样清楚运算符的优 先级。 • if (a == b && c ==d) // AVOID! • if ((a == b) && (c == d)) // RIGHT
火龙果·整理
命名规范:变量
• 除了变量名外,所有实例,包括类,类常量,均采用大小写混合的方 式,第一个单词的首字母小写,其后单词的首字母大写。变量名不应 以下划线或美元符号开头,尽管这在语法上是允许的。 • 例如: • char c • int i • float myWidth
火龙果·整理
实例变量
• 针对特定的实例所使用,实例变量名应简短且富于描述。变量名的选 用应该易于记忆,即,能够指出其用途。尽量避免单个字符的变量名, 除非是一个临时变量。临时变量通常被取名为i,j,k,m和n,它们 一般用于整形;c,d,e,它们一般用于字符型。 • int _employeeld • String _name • Customer _customer
火龙果·整理
语句
• 简单语句:每行至多包含一条语句。 • 复合语句:复合语句是包含在大括号中的语句序列,形如“{ 语句 }” 。 • 返回语句:一个带返回值的return语句不使用小括号“()”,除非它们 以某种方式使返回值更显见。
火龙果·整理
语句
if, if-else, if else-if else语句。if语句问题用“{”和“}”括起来,避免使用如 下容易引起错误的格式 。 for语句(for Statements)。 while语句 。 do-while语句 。 switch语句。每当一个case顺着往下执行时(因为没有break语句),通常 应在break语句的位置添加注释。 try-catch语句。
火龙果·整理
条件运算符“?”前的表达式
• 如果一个包含二元运算符表达式出现在三元运算符“ ? : ”之前,那么 应该给表达式添上一对圆括号。例如: • (x >= 0) ? x : -x;
火龙果·整理
实现注释:块注释
• • • • • 块注释通常用于提供对文件,方法,数据结构和算法的描述。 块注释被置于每个文件的开始处以及每个方法之前。 它们也可以被用于其他地方,比如方法的内部。 该注视应和其描述的代码有一样的缩进。 块注释可以以/ *-开头,这样就可以将之识别为一个代码块的开始,而 不会重排它。
火龙果·整理
类和接口的声明
• • • • 当编写类和接口时,应该遵守以下格式规则: ◆ 在方法名与其参数列表之前的左括号“(”间不要有空格。 ◆ 左大括号“{”位于声明语句同行的末尾。 ◆ 右大括号“}”另起一行,与相应的声明语句对齐,除非是一个空 语句,“}”应紧跟在“{”之后。 • ◆ 方法与方法之间以空行分隔。
火龙果·整理
实现注释:行末注释
• 注释界定符“//”,可以注释掉整行或者一行中的一部分。它一般不 用于连续多行的注释文本;然而,它可以用来注释掉多行的代码段。 以下是例子:
火龙果·整理
文档注释
• 文档注释描述Java的类、接口、构造器、方法,以及字段(field)。 • 每个文档注释都会被置于注释界定符/ **…*/之中,一个注释对应一个 类、接口或成员。 • 该注释应位于声明之前。
火龙果·整理
常量 • 大小写规则和变量名相似,除了前面需要一个下划线隔开。 尽量避免ANSI(国际标准协会)常量,容易引起错误。 • 例如: • static final int MIN_WIDTH = 4 • static final int MAX_WIDTH = 999 • static final int GET_THE_CPU = 1 • 命名规范使程序更易读,从而更易于理解。它们也可以 提供一些有关标识符功能的信息,以助于理解代码。
火龙果·整理
命名规范:包
• 一个唯一包名的前缀总是全部小写的ASCⅡ字母并且是一个顶级域名, 通常是com,gov,edu,mil,net,org,或1981年ISO 3166标准所 指定的标识的国家的英文双字符代码。包名的后续部分根据不同机构 各自内部的命名规范而不尽相同。这类命名规范可能以特定目录名的 组成来区分部门(department),项目(project),机器(machine),或注 册名(login names)。 • 例如: • com.sun.eng • com.apple.quicktime.v2 • edu.cmu.cs.bovik.cheese
火龙果·整理
声明
每行声明变量的数量
• 推荐一行一个声明,因为这样以利于写注释。
火龙果·整理
布局
• 只在代码块的开始处声明变量(一个块是指任何被包含在大括号“{” 和“}”中间的代码)。不要在首次用于该变量时才声明之,这会把注 意力不集中的程序员搞糊涂,同时会妨碍代码在该作用域内的可移植 性。 • 该规则的一个例外是for循环的索引变量 • for (int i = 0; I < maxLoops; i++) { … } • 避免声明的局部变量覆盖上一级声明的变量。