Package?的命名
Package?的名字应该都是由一个小写单词组成.
Class?的命名
Class?的名字必须由大写字母开头而其他字母都小写的单词组成
Class?变量的命名
变量的名字必须用一个小写字母开头.后面的单词用大写字母开头.
Static?Final?变量的命名
Static?Final?变量的名字应该都大写,并且指出完整含义.
参数的命名
参数的名字必须和变量的命名规范一致.
数组的命名
数组应该总是用下面的方式来命名:
byte[]?buffer;
而不是:
byte?buffer[];
方法的参数
使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字:
SetCounter(int?size){
this.size?=?size;
}
变量名
普通变量命名应该采用首字母小写,其他字母首字母大写的方式.
final static变量的名字应该都大写,并且指出完整含义.如果一个常量名称由多个单词组成,则应该用下划线来分割这些单词如.
NUM_DAYS_IN_WEEK MAX_VALU
如果需要对变量名进行缩写时,一定要注意整个代码中缩写规则的一致性
context=ctx message=msg
通过在结尾处放置一个量词,就可创建更加统一的变量
First(一组变量中的第一个) Last(一组变量中的最后一个) Next(一组变量中的下一个变量) Prev(一组变量中的上一个) Cur(一组变量中的当前变量)
无论什么时候,均提倡应用常量取代数字、固定字符串.也就是说,程序中除0,1以外,尽量不应该出现其他数字.
索引变量:i、j、k等只作为小型循环的循环索引变量.
逻辑变量:避免用flag来命名状态变量,用is来命名逻辑变量.
if(isClosed){ dosomeworks; return; }
数组
总是使用以下方式定义数组:
int[] arr = new int[10];
禁止使用C语言的是形式:
禁止 int arr[] = new int[10];
集合
数组或者容器推荐命名方式为名词+s的方式,例如:
List?persons = getPerson(); for(Person person : persons){ dosomeworks; }
泛型
应该尽量简明扼要(最好是一个字母),以利于与普通的class或interface区分
Container中的Element应该用E表示;Map里的key用K表示,value用V;Type用T表示;异常用X表示
public class HashSet?extends AbstractSet?{...} public class HashMapextends AbstractMap?{...} public class ThreadLocal?{...} public interface Functor?{ T val() throws X; }
推荐的命名
①当要区别接口和实现类的时候,可以在类的后面加上"Impl".
interface Container class ContainerImpl
DataNotFoundException InvalidArgumentException
AbstractBeanDefinition AbstractBeanFactory
ContainerTest
cp代表colorPoint buf代表buffer off代表offset len代表length
除非是在循环中,否则一般不推荐使用单个字母作为变量名,不过也有例外,即约定俗成的单个字母
b代表byte c代表char d代表double e代表Exception f代表float i, j, k代表整数 l代表long o代表Object s代表String v代表某些类型的特定值
代码风格
花括号
花括号统一采用以下格式:
if(bool experssion){ dosomework; }
除非花括号中为空,不然任何情况下不能省略花括号,并且花括号必须换行,例如:
if(i==0){ return; } while(true) {}
以下写法禁止出现:
禁止 if(i != 0) return; 禁止 if(i !=0) {return;}
括号
括号的前,后一个字符不需要空格,例如:
空格
逗号之后紧跟一个空格.
二元操作符前后跟空格.
int i = a + b – c * d;
for(int i = 0; I 10; i++){ dosomework; }
类
类的定义结构按照顺序为:
①.) 常量
各个部分之间留出一个空行.
例如:
规范类模板:
class Person{ private final static int MAX_AGE = 100; private String firstname = "Jack"; public Person(){} public Person(String firstname){ this.firstname = firstname; } public void doExercise(){ dosomeworks; run(); } private void run(){ dosomeworks; } public getFirstname(){ return firstname; } public setFirstname(String firstname){ this.firstname = firstname; } }
①.) 参数为空的构造函数出现在最上方
在类的方法内引用成员变量了命名冲突以外,不使用this.非特殊情况在类的方法内都不使用get和set方法存取成员变量.
有调用关系的方法尽量放在相邻的位置,public和private方法可以交叉放置.
Javadoc注释
①..使用完整描述符来准确地描述变量、字段或类.
例如,使用的名称可以是 FirstName、GrandTotal 或 Corporate Customer.虽然像 x1、y1 或 fn 这样的名称较短容易输入,但是它们并不提供任何信息指出它们所代表的内容.这样对代码的理解、维护和增强会造成一定困难.
如果您的用户将他们的客户称为顾客,则对这个类使用术语Customer来代替Client.许多开发人员曾经犯了这样一个错误:当业界或领域中已存在更贴切的术语时,他们还冥思苦想,准备为一些概念创建通用术语.
这表示您应该维护一份标准短格式(缩写)的列表,应该明智地选择它们,并在使用时保持一贯性.例如,如果要使用字 arithmetic 的短格式, 选择 ar、ari 或 art 中的一个,记录下所选的缩写(到底是哪个并不重要),并只使用这一个.
通常应该使用小写字母,但是将类名和接口名称的第一个字母写成大写,将所有非起始单词的第一个字母也写成大写.
名称会经常包含标准缩写,如 SQL 表示"Standard Query Language".诸如表示属性的 sqlDatabase 或表示类的 sQLDatabase 等名称比sQLDatabase 和SQLDatabase 更便于阅读.
虽然类名 AllImplemented IterfacesAndSubclass 可能是个比较好的类名(当然,在此示例中有些夸张),但是这个名称显然太长,应该把它重命名为较短的名称才好.
不应该同时使用变量名 myObject 和 myObjects,也不应该同时使用 myOraDatabase 和 anORADatabase.
扩展资料:
Java类的命名规范如下:
①.、 项目名全部小写
如:public class MyFirstClass{}
如:int index=0;
public void toString(){}
如:public static final String GAME_COLOR="RED";
①.)、名称只能由字母、数字、下划线、$符号组成
参考资料:百度百科-Java
servlet类所在包命名规范:域名类型.域名.项目名称.web.servlet
例如:com.baidu.web.servlet
自定义标签类所在包命名规范:域名类型.域名.项目名称.web.tags
例如:com.baidu.web.tags
过滤器类所在包命名规范:域名类型.域名.项目名称.web.filter
例如:com.baidu.web.filter
Action类所在包命名规范:域名类型.域名.项目名称.web.action
例如:com.baidu.web.action
ActionForm类所在包命名规范:域名类型.域名.项目名称.web.form
例如:com.baidu.web.form
Javabean所在包命名规范:域名类型.域名.项目名称.web.service.impl
例如:com.baidu.web.service.impl
Javabean实现接口命名规范:域名类型.域名.项目名称.web.service
例如:com.baidu.web.service
DAO类所在包命名规范:域名类型.域名.项目名称.dao.impl
例如:com.baidu.dao.impl
DAO类所实现的接口在包中命名规范:域名类型.域名.项目名称.dao
例如:com.baidu.dao
POJO类与hbm文件所在包命名规范:域名类型.域名.项目名称.dao.hbm
例如:com.baidu.dao.hbm
全局公共类、接口类所在包命名规范:域名类型.域名.项目名称.global
例如:com.baidu.global
全局工具类所在包命名规范:域名类型.域名.项目名称.util
例如:com.baidu.util
在java中,自有一套命名规则,下面我就大概的说一下,希望对你能有用. \x0d\x0a包名:包名是全小写的名词,中间可以由点分隔开,例如:java.awt.event; \x0d\x0a\x0d\x0a类名:首字母大写,通常由多个单词合成一个类名,要求每个单词的首字母也要大写,例如class HelloWorldApp; \x0d\x0a\x0d\x0a接口名:命名规则与类名相同,例如interface Collection; \x0d\x0a\x0d\x0a方法名:往往由多个单词合成,第一个单词通常为动词,首字母小写,中间的每个单词的首字母都要大写,例如:balanceAccount, \x0d\x0aisButtonPressed; \x0d\x0a\x0d\x0a变量名:全小写,一般为名词,例如:length; \x0d\x0a\x0d\x0a常量名:基本数据类型的常量名为全大写,如果是由多个单词构成,可以用下划线隔开,例如:int YEAR, int \x0d\x0aWEEK_OF_MONTH;如果是对象类型的常量,则是大小写混合,由大写字母把单词隔开.
java类名是驼峰命名,即单词首字母大写,其他字母小写,其他看要求,目录一般都是小写,一般命名是和当前业务相关的英文单词.
以上就是土嘎嘎小编为大家整理的java项目代码命名规范相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!