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学院整理)网站的支持!

标签:java,命名规范
0
投稿

猜你喜欢

  • SpringBoot超详细讲解@Value注解

    2022-03-06 12:05:36
  • .net 随机生成汉字

    2022-01-22 08:33:33
  • SpringBoot使用jasypt加解密密码的实现方法(二)

    2021-10-15 14:16:46
  • Java经典面试题汇总--多线程

    2023-07-13 01:17:48
  • ElasticSearch添加索引代码实例解析

    2023-11-21 03:41:04
  • Java 全方位讲解面向对象特点与使用

    2023-07-21 18:34:06
  • SpringBoot路径映射实现过程图解

    2023-11-13 04:01:11
  • Ubuntu搭建Java开发环境笔记

    2023-10-10 14:27:49
  • 深入解析Java的Hibernate框架中的一对一关联映射

    2022-08-07 22:23:39
  • 深入理解Javascript中的this关键字

    2022-03-08 16:52:25
  • 如何使用MybatisPlus快速进行增删改查详解

    2023-11-03 06:58:13
  • Android 无障碍全局悬浮窗实现示例

    2023-07-30 08:50:01
  • Spring boot配置绑定和配置属性校验的方式详解

    2022-04-21 03:06:06
  • maven <repositories>标签和<pluginRepositories>标签的使用

    2022-09-26 01:06:33
  • 双重检查锁定模式Java中的陷阱案例

    2023-11-13 22:11:02
  • java 解决异常 2 字节的 UTF-8 序列的字节2 无效的问题

    2021-06-01 10:29:00
  • java识别一篇文章中某单词出现个数的方法

    2022-04-24 06:18:40
  • 在项目中直接使用hystrix的流程分析

    2021-10-22 01:55:21
  • Java中List集合去重方法以及效率对比

    2021-11-03 00:15:52
  • java IO流 之 输入流 InputString()的使用

    2023-08-22 07:44:31
  • asp之家 软件编程 m.aspxhome.com