Java项目开发命名规范(动力节点Java学院整理)
作者:mrr 时间:2021-06-24 07:16:56
最好使用英文,不要用汉语拼音
1:包(package):用于将完成不同功能的类分门别类,放在不同的目录(包)下,包的命名规则:将公司域名反转作为包名。比如www.bjpowernode.com 对于包名:每个字母都需要小写。比如:com. bjpowernode.test;该包下的Test类的全名是:com. bjpowernode.Test.java 。如果定义类的时候没有使用package,那么java就认为我们所定义的类位于默认包里面(default package)。
2:类:首字母大写,如果一个类由多个单词构成,那么每个单词的首字母都大写,而且中间不使用任何的连接符。尽量使用英文。如ConnectionFactory
3:方法:首单词全部小写,如果一个方法由多个单词构成,那么从第二个单词开始首字母大写,不使用连接符。addPerson
4:属性:与方法相同。如ageOfPerson
5:常量:所有单词的字母都是大写,如果有多个单词,那么使用下划线链接即可。
如:
public static final int AGE_OF_PERSON = 20; //通常加上static
补充:在变量命名时要注意以下几点:
· 选择有意义的名字,注意每个单词首字母要大写。
· 在一段函数中不使用同一个变量表示前后意义不同的两个数值。
· i、j、k等只作为小型循环的循环索引变量。
· 避免用Flag来命名状态变量。
· 用Is来命名逻辑变量,如:blnFileIsFound。通过这种给布尔变量肯定形式的命名方式,使得其它开发人员能够更为清楚的理解布尔变量所代表的意义。
· 如果需要的话,在变量最后附加计算限定词,如:curSalesSum。
· 命名不相包含,curSales和curSalesSum。
· static final 变量(常量)的名字应该都大写,并且指出完整含义。
· 如果需要对变量名进行缩写时,一定要注意整个代码中缩写规则的一致性。例如,如果在代码的某些区域中使用intCnt,而在另一些区域中又使用intCount,就会给代码增加不必要的复杂性。建议变量名中尽量不要出现缩写。
· 通过在结尾处放置一个量词,就可创建更加统一的变量,它们更容易理解,也更容易搜索。例如,请使用 strCustomerFirst和strCustomerLast,而不要使用strFirstCustomer和strLastCustomer。常 用的量词后缀有:First(一组变量中的第一个)、Last(一组变量中的最后一个)、Next(一组变量中的下一个变量)、Prev(一组变量中的上 一个)、Cur(一组变量中的当前变量)。
· 为每个变量选择最佳的数据类型,这样即能减少对内存的需求量,加快代码的执行速度,又会降低出错的可能性。用于变量的数据类型可能会影响该变量进行计算所产生的结果。在这种情况下,编译器不会产生运行期错误,它只是迫使该值符合数据类型的要求。这类问题极难查找。
· 尽量缩小变量的作用域。如果变量的作用域大于它应有的范围,变量可继续存在,并且在不再需要该变量后的很长时间内仍然占用资源。它们的主要问题是,任何类 中的任何方法都能对它们进行修改,并且很难跟踪究竟是何处进行修改的。占用资源是作用域涉及的一个重要问题。对变量来说,尽量缩小作用域将会对应用程序的 可靠性产生巨大的影响。
关于常量的命名方法,在JAVA代码中,无论什么时候,均提倡应用常量取代数字、固定字符串。也就是 说,程序中除0,1以外,尽量不应该出现其他数字。常量可以集中在程序开始部分定义或者更宽的作用域内,名字应该都使用大写字母,并且指出该常量完整含 义。如果一个常量名称由多个单词组成,则应该用下划线“_”来分割这些单词如:NUM_DAYS_IN_WEEK、MAX_VALUE。
以上所述是小编给大家介绍的Java项目开发命名规范(动力节点Java学院整理)网站的支持!
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
SpringBoot超详细讲解@Value注解
.net 随机生成汉字
SpringBoot使用jasypt加解密密码的实现方法(二)
Java经典面试题汇总--多线程
![](https://img.aspxhome.com/file/2023/1/57521_0s.jpg)
ElasticSearch添加索引代码实例解析
![](https://img.aspxhome.com/file/2023/3/59543_0s.png)
Java 全方位讲解面向对象特点与使用
![](https://img.aspxhome.com/file/2023/4/68704_0s.png)
SpringBoot路径映射实现过程图解
![](https://img.aspxhome.com/file/2023/6/59376_0s.png)
Ubuntu搭建Java开发环境笔记
深入解析Java的Hibernate框架中的一对一关联映射
深入理解Javascript中的this关键字
如何使用MybatisPlus快速进行增删改查详解
![](https://img.aspxhome.com/file/2023/1/58741_0s.png)
Android 无障碍全局悬浮窗实现示例
Spring boot配置绑定和配置属性校验的方式详解
![](https://img.aspxhome.com/file/2023/4/64884_0s.png)
maven <repositories>标签和<pluginRepositories>标签的使用
双重检查锁定模式Java中的陷阱案例
![](https://img.aspxhome.com/file/2023/5/59575_0s.png)
java 解决异常 2 字节的 UTF-8 序列的字节2 无效的问题
java识别一篇文章中某单词出现个数的方法
在项目中直接使用hystrix的流程分析
![](https://img.aspxhome.com/file/2023/8/73048_0s.jpg)