java命名规范
java中的命名规则和具体要求
![java中的命名规则和具体要求](https://img.taocdn.com/s3/m/37322ee985254b35eefdc8d376eeaeaad1f31625.png)
java中的命名规则和具体要求
在Java中,命名规则和具体要求有以下几点:
1. 标识符的命名规则:
- 可以由字母、数字、下划线和美元符号组成。
- 第一个字符必须是字母、下划线或美元符号。
- 标识符不能是Java的关键字,例如if、for、class等。
2. 标识符的命名规范:
- 使用驼峰命名法(Camel Case):除了第一个单词的首字母小写外,其余单词的首字母大写。
- 标识符要有意义,能够清晰地表达其用途。
- 标识符不宜过长,一般不超过15个字符。
3. 包名的命名规范:
- 同样使用驼峰命名法。
- 包名应该是全小写字母。
- 包名应该与域名反向相对应,例如com.example。
4. 类名的命名规范:
- 使用驼峰命名法。
- 类名的第一个字母应该大写。
- 类名应该是名词或名词短语。
5. 方法名的命名规范:
- 使用驼峰命名法。
- 方法名的第一个字母应该小写。
- 方法名应该是动词或动词短语。
6. 常量名的命名规范:
- 使用全大写字母。
- 多个单词之间用下划线分隔。
- 常量名应该是名词或名词短语。
需要注意的是,虽然Java中对变量名的长度没有明确限制,但为了提高代码的可读性,应尽量避免使用过长的变量名。
另外,根据Java编码规范,建议使用英文命名,不要使用中文或其他非英文字符。
java文件命名规则
![java文件命名规则](https://img.taocdn.com/s3/m/d6e67868ac02de80d4d8d15abe23482fb4da02b4.png)
java文件命名规则Java文件命名规则在Java编程中,文件命名规则是非常重要的,它可以让代码更加规范、易读和易于维护。
本文将介绍一些常见的Java文件命名规则,以及为什么要遵守这些规则。
1. 文件名应以字母开头在Java中,文件名应以字母开头,可以包含字母、数字和下划线。
不推荐使用特殊字符或空格。
这样可以保证文件名的可读性和可维护性。
2. 类名应采用驼峰命名法在Java中,类名应采用驼峰命名法,即首字母小写,后面的每个单词首字母大写,例如:myClass、helloWorld。
这样可以使类名更加清晰易读。
3. 接口名应采用驼峰命名法与类名类似,接口名也应采用驼峰命名法。
在Java中,接口名通常以大写字母"I"开头,例如:IHello、IMessage。
这样可以清楚地表示该名称是一个接口。
4. 方法名应采用驼峰命名法在Java中,方法名也应采用驼峰命名法。
方法名应该描述该方法的功能,以动词开头,例如:sendMessage、calculateSum。
这样可以使方法名更加清晰易懂。
5. 常量名应全大写,单词间用下划线分隔在Java中,常量名应全大写,单词之间用下划线分隔。
例如:MAX_VALUE、PI。
这样可以使常量名在代码中更加显眼,易于辨识。
6. 包名应全小写,单词间用点分隔在Java中,包名应全小写,单词之间用点分隔。
例如:com.example.utils。
这样可以使包名更加规范,易于识别和管理。
7. 文件名应与类名或接口名一致在Java中,文件名应与类名或接口名一致。
例如,类名为MyClass,则文件名应为MyClass.java。
这样可以避免混淆和错误。
8. 避免使用中文或拼音作为命名在Java中,应避免使用中文或拼音作为命名。
尽管Java支持中文命名,但不推荐使用,因为这样会增加代码的可读性和可维护性。
9. 使用有意义的命名在Java中,命名应具有描述性,能够清晰地表达其用途。
java 版本命名规则
![java 版本命名规则](https://img.taocdn.com/s3/m/883d743da7c30c22590102020740be1e650ecc0e.png)
java 版本命名规则Java版本命名规则在Java编程语言中,每个版本都有其特定的命名规则。
这些命名规则旨在确保版本的辨识度和一致性。
本文将介绍Java版本命名规则,并对每个版本进行简要的描述。
1. Java 1.0(Oak)Java 1.0是最早发布的Java版本,也被称为Oak。
它是最基本的Java版本,提供了最基础的Java语言特性和类库。
2. Java 1.1(Java 1)Java 1.1是Java的第一个正式版本,也被称为Java 1。
它增加了许多新特性,如内部类、反射、JavaBeans等。
3. Java 1.2(Java 2)Java 1.2是Java的第二个正式版本,也被称为Java 2。
它引入了许多重要的改进,包括集合框架、Swing界面库、Java命名和目录接口等。
4. Java 1.3(Kestrel)Java 1.3是Java的第三个正式版本,也被称为Kestrel。
它增加了一些新特性,如JDBC 2.0、Java Sound API和Java Naming and Directory Interface (JNDI)等。
5. Java 1.4(Merlin)Java 1.4是Java的第四个正式版本,也被称为Merlin。
它引入了许多重要的改进,如正则表达式、NIO、XML处理、JMX等。
6. Java 5.0(Tiger)Java 5.0是Java的第五个正式版本,也被称为Tiger。
它引入了许多重要的新特性,如泛型、自动装箱/拆箱、枚举、注解等。
7. Java 6(Mustang)Java 6是Java的第六个正式版本,也被称为Mustang。
它增加了一些新特性,如脚本引擎、JAXB 2.0、Java Compiler API等。
8. Java 7(Dolphin)Java 7是Java的第七个正式版本,也被称为Dolphin。
它引入了一些新特性,如钻石操作符、try-with-resources语句、switch语句的字符串等。
java中类名的命名规则
![java中类名的命名规则](https://img.taocdn.com/s3/m/9e3383e532d4b14e852458fb770bf78a65293aa3.png)
java中类名的命名规则Java中类名的命名规则Java是一门面向对象的编程语言,类是Java中最基本的组成单元之一,类名的命名规则对于Java程序的编写非常重要。
下面将介绍Java中类名的命名规则。
1.类名的长度和含义Java中类名的长度应该尽可能的短,但是要表达清楚该类的含义。
类名应该是一个名词,能够清晰地表达该类的作用和意义。
2.类名的首字母大写Java中类名的首字母必须大写,这是Java语言的规定。
如果类名由多个单词组成,那么每个单词的首字母都要大写。
3.类名的命名方式Java中类名的命名方式有三种:驼峰式命名法、下划线命名法和大写命名法。
(1)驼峰式命名法驼峰式命名法是Java中最常用的命名方式,它将单词的首字母大写,并将多个单词连接在一起,中间不使用分隔符。
例如:Person、Student、StudentInfo。
(2)下划线命名法下划线命名法将单词之间用下划线连接起来,每个单词的首字母都是小写的。
例如:person_info、student_info、student_info_detail。
(3)大写命名法大写命名法将单词的首字母大写,并将多个单词连接在一起,中间不使用分隔符。
例如:PERSON、STUDENT、STUDENTINFO。
4.类名的命名规范Java中类名的命名规范应该遵循以下几点:(1)类名应该尽量简短,但是要表达清楚该类的作用和意义。
(2)类名应该是一个名词,能够清晰地表达该类的作用和意义。
(3)类名的首字母必须大写。
(4)如果类名由多个单词组成,那么每个单词的首字母都要大写。
(5)类名的命名方式应该遵循驼峰式命名法。
(6)类名不要使用Java中的关键字。
5.类名的命名示例下面是Java中类名的一些常见示例:(1)Person:表示一个人的类。
(2)Student:表示一个学生的类。
(3)Teacher:表示一个老师的类。
(4)Car:表示一辆车的类。
(5)Computer:表示一台电脑的类。
java方法的命名规则
![java方法的命名规则](https://img.taocdn.com/s3/m/c9cf6e0b11661ed9ad51f01dc281e53a5902514f.png)
java方法的命名规则Java方法的命名规则在Java编程中,方法是一种用于封装可执行代码的语句块,可以重复使用并且可以接受参数和返回结果。
为了提高代码的可读性和维护性,我们需要遵守一定的命名规则来命名方法。
以下是一些常用的Java方法的命名规则。
1. 使用动词作为方法名的开头:方法名应该以动词开头,以描述方法的操作。
例如,可以使用"calculate"、"generate"、"find"等动词来命名方法。
2. 使用驼峰命名法:驼峰命名法是一种命名方法,其中每个单词的首字母大写,其他字母小写,并且单词之间没有下划线。
例如,可以使用"calculateSum"、"generateRandomNumber"、"findMaxValue"等命名方法。
3. 使用有意义的方法名:方法名应该能够准确地描述方法的功能和目的。
避免使用无意义的方法名,例如"xyz"、"temp"等。
使用有意义的方法名可以提高代码的可读性和可维护性。
4. 避免使用缩写和简写:尽量避免使用缩写和简写,除非它们是广为接受的词汇。
使用完整的单词可以提高代码的可读性,并且可以避免歧义。
5. 使用名词和形容词来描述返回结果:如果方法返回一个结果,例如计算结果或对象实例,可以使用名词或形容词来描述返回结果。
例如,可以使用"getSum"、"findMaxValue"等命名方法。
6. 使用具体的参数名:方法的参数应该具有描述性的名称,以便于理解和使用。
避免使用单个字母作为参数名,例如"a"、"b"等。
使用具体的参数名可以提高代码的可读性,并且可以减少错误。
7. 使用动词和名词组合来描述复杂操作:如果方法需要进行复杂的操作,可以使用动词和名词的组合来描述操作的步骤和目标。
java命名规范
![java命名规范](https://img.taocdn.com/s3/m/9a263a08f011f18583d049649b6648d7c1c7088f.png)
java命名规范Java命名规范是指在编写Java代码时应遵循的命名规则和约定。
它的目的是为了使代码更易于阅读、理解和维护。
下面是关于Java命名规范的详细说明:1. 包名:- 包名应该全部小写,不使用下划线或其他特殊字符。
- 包名应该按照域名倒序指定,例如com.example.project。
- 包名应该具有实际意义,反映所包含的类的功能。
2. 类名:- 类名以大写字母开头,并使用驼峰式命名法,例如MyClass。
- 类名应该具有实际意义,反映类的责任和功能。
- 类名不应该使用缩写或首字母缩写。
3. 接口名:- 接口名以大写字母开头,并使用驼峰式命名法,例如MyInterface。
- 接口名应该具有实际意义,反映接口的功能。
4. 方法名:- 方法名以小写字母开头,并使用驼峰式命名法,例如myMethod。
- 方法名应该具有实际意义,反映方法的功能。
- 方法名不应该使用缩写或首字母缩写。
5. 变量名:- 变量名以小写字母开头,并使用驼峰式命名法,例如myVariable。
- 变量名应该具有实际意义,反映变量的用途。
- 如果变量名包含多个单词,则使用下划线将其分隔,例如my_variable。
6. 常量名:- 常量名应该全部大写,并使用下划线将单词分隔,例如MY_CONSTANT。
- 常量名应该具有实际意义,反映常量的用途。
7. 枚举类型名:- 枚举类型名以大写字母开头,并使用驼峰式命名法,例如MyEnum。
8. 包内私有变量和方法名:- 包内私有变量和方法名以小写字母开头,并使用驼峰式命名法,例如myPrivateVariable。
- 包内私有变量和方法应该具有实际意义,反映其用途和功能。
9. 类成员变量和方法名:- 类成员变量和方法名以小写字母开头,并使用驼峰式命名法,例如myMemberVariable。
- 类成员变量和方法名应该具有实际意义,反映其用途和功能。
10. 参数名:- 参数名以小写字母开头,并使用驼峰式命名法,例如myParameter。
java文件名命名规则
![java文件名命名规则](https://img.taocdn.com/s3/m/b5da42e07e192279168884868762caaedd33baaa.png)
java文件名命名规则Java文件名命名规则Java作为一种广泛应用的编程语言,文件名的命名规则也是非常重要的。
一个规范的文件名可以提高代码的可读性和可维护性,便于团队合作和代码管理。
下面将介绍一些Java文件名的命名规则。
1. 文件名使用驼峰命名法:Java文件名应该使用驼峰命名法,即每个单词的首字母大写,不使用下划线或连字符。
例如,一个表示学生信息的Java类文件可以命名为StudentInfo.java。
2. 文件名应与类名相同:Java文件的文件名应与其中的public类名相同。
这是因为Java编译器要求一个文件中只能有一个public 类,并且这个类名必须与文件名相同。
3. 包名反映文件路径:Java文件的包名应该与文件所在的目录路径相对应。
例如,包名为com.example的Java文件应该放在文件系统的com/example目录下。
4. 文件名使用有意义的名词:文件名应该使用能够清晰表达文件内容的有意义的名词。
避免使用无意义的命名,如Test.java或Temp.java。
5. 避免使用保留字:文件名不能使用Java的保留字作为文件名,如public、class、static等。
6. 文件名使用合适的扩展名:Java源代码文件的扩展名应该为.java,表示该文件中包含的是Java源代码。
而编译后生成的字节码文件的扩展名应该为.class。
7. 使用英文命名:尽量使用英文单词进行命名,避免使用拼音或其他非英文字符。
这样可以提高代码的可读性,降低理解和维护代码的难度。
8. 使用名词而不是动词:文件名应该使用名词而不是动词来命名,这样更符合Java的面向对象的编程思想。
9. 使用简洁明了的命名:文件名应该尽量简洁明了,避免过长的命名。
过长的文件名不仅不利于代码的阅读和书写,还容易引发命名冲突。
10. 遵循项目的命名规范:在实际开发中,不同的项目可能有不同的命名规范,应该根据项目的具体规范来命名文件。
Java中的命名规范
![Java中的命名规范](https://img.taocdn.com/s3/m/979ee1e99a89680203d8ce2f0066f5335a816744.png)
Java 中的命名规范Java 中的命名规范⼀. 常规约定类⼀般采⽤⼤驼峰命名,⽅法和局部变量使⽤⼩驼峰命名,⽽⼤写下划线命名通常是常量和枚举中使⽤。
⼆. 包命名包名统⼀使⽤⼩写,点分隔符之间有且仅有⼀个⾃然语义的英⽂单词或者多个单词⾃然连接到⼀块(如 springframework ,deepspace 不需要使⽤任何分割)。
包名统⼀使⽤单数形式,如果类命有复数含义,则可以使⽤复数形式。
包名的构成可以分为以下⼏四部分【前缀】【发起者名】【项⽬名】【模块名】。
常见的前缀可以分为以下⼏种:三. 类命名类名使⽤⼤驼峰命名形式,类命通常时名词或名词短语,接⼝名除了⽤名词和名词短语以外,还可以使⽤形容词或形容词短语,如Cloneable ,Callable 等,表⽰实现该接⼝的类有某种功能或能⼒。
对于测试类则以它要测试的类开头,以Test 结尾,如HashMapTest 。
对于⼀些特殊特有名词缩写也可以使⽤全⼤写命名,⽐如XMLHttpRequest ,不过笔者认为缩写三个字母以内都⼤写,超过三个字母则按照要给单词算。
这个没有标准,如阿⾥巴巴中fastjson ⽤JSONObject 作为类命,⽽google 则使⽤JsonObjectRequest 命名,对于这种特殊的缩写,原则是统⼀就好。
四. ⽅法类型约束例项⽬名全部⼩写,多个单词⽤中划线分隔‘-’spring-cloud 包名全部⼩写com.alibaba.fastjson类名单词⾸字母⼤写Feature, ParserConfig,DefaultFieldDeserializer 变量名⾸字母⼩写,多个单词组成时,除⾸个单词,其他单词⾸字母都要⼤写password, userName 常量名全部⼤写,多个单词,⽤'_'分隔CACHE_EXPIRED_TIME ⽅法同变量read(), readObject(), getById()前缀名例含义indi (或onem )indi.发起者名.项⽬名.模块名.……个体项⽬,指个⼈发起,但⾮⾃⼰独⾃完成的项⽬,可公开或私有项⽬,copyright 主要属于发起者。
java命名规则
![java命名规则](https://img.taocdn.com/s3/m/6454fe3b876fb84ae45c3b3567ec102de2bddf1c.png)
java命名规则Java编程语言在语言设计的时候,就已经包含了一套完善的命名规则。
为了能够更好的阅读、编写程序,任何一种编程语言,必须首先规范变量、函数等各种结构命名,才能够保证程序的清晰易读,以及代码的可维护性和可维护性。
Java程语言的命名规则主要是:1.量名称:变量名称有单词和缩写组成,以字母(a-z,A-Z)、数字(0-9)、下划线(_)和美元符号($)组成,但是变量名不能以数字开头;变量名必须以字母或者下划线开头,美元符号不能作为开头;2.量名称:Java名规则规定,常量名只能由大写字母(A-Z)、下划线(_)、和数字(0-9)组成,不能出现小写字母,也不能以数字开头;3.名称:Java类名采用正常的单词名,类名只能由大写字母(A-Z)、下划线(_)组成,不能出现小写字母,也不能以数字开头;4.法名称:Java程语言的方法名也是采用正常的单词名,方法名只能由小写字母(a-z)、下划线(_)组成,不能出现大写字母,也不能以数字开头;5.识符名称:Java程语言的标识符名称可以包括变量名、函数名、类名、常量名等,标识符名只能由字母(a-z,A-Z)、数字(0-9)、下划线(_)和美元符号($)组成,但是标识符名不能以数字开头;以上就是 Java程语言的命名规则,如果按照上面的Java程语言命名规则来命名,在书写代码或者读代码的时候,可以使代码的可读性大大提高,方便程序员找到特定的信息,也能够更好的使用程序阅读和编写其他的程序。
在实际编程开发过程中,如果使用合理的Java名规则,不仅可以提高编程的效率,而且能够有效的减少出现 bug况,发现问题会更加迅速和准确;使用正确的命名规则,可以帮助程序员避免出现两个变量名称一样或者多次使用同一个变量名称、常量名称等等,以及避免大量问题出现在编写代码以及程序修改、维护等过程中。
为了日后使用程序能够保持一致性,方便程序员阅读、编写程序,以及更高效的开发和维护,使用Java程语言的程序员,都应该牢记Java程语言的命名规则,按照上面的规则,力求在编程开发中,使用更合理的命名方式,降低代码出错的概率,提高编写程序的效率。
java工程名命名规则
![java工程名命名规则](https://img.taocdn.com/s3/m/8015f5ec77a20029bd64783e0912a21614797f82.png)
Java工程名命名规则一、概述在Java开发中,工程名是非常重要的标识符之一。
一个好的工程名可以提高代码的可读性和可维护性,便于团队协作和项目管理。
本文将介绍Java工程名的命名规则,包括命名规范、命名风格以及一些常用的命名技巧。
二、命名规范1. 命名长度Java工程名的长度应控制在合理范围内,通常不超过30个字符。
过长的工程名不利于代码编辑和阅读,而过短的工程名可能不足以准确描述工程的功能。
2. 字母和数字Java工程名只能包含字母和数字,且必须以字母开头。
工程名不允许包含空格、特殊字符和中文字符。
3. 大小写工程名区分大小写,因此需要注意大小写的使用。
通常建议使用驼峰命名法,即首字母小写,后续单词首字母大写,例如:myProject、helloWorld。
4. 关键字工程名不得使用Java的关键字,如class、public、static等。
这些关键字是Java语言的保留字,不能作为标识符使用。
5. 含义明确一个好的工程名应该能够准确地反映工程的功能和用途。
避免使用无意义的名称,如temp、test等。
建议使用具有描述性的单词或短语,以便于他人理解。
三、命名风格1. 驼峰命名法驼峰命名法是Java中常用的命名风格,尤其适合于工程名的命名。
驼峰命名法分为两种形式:小驼峰命名法和大驼峰命名法。
•小驼峰命名法:首字母小写,后续单词首字母大写,例如:myProject、helloWorld。
•大驼峰命名法:每个单词的首字母都大写,例如:MyProject、HelloWorld。
2. 下划线命名法下划线命名法也是一种常见的命名风格,通常用于数据库表名和常量名的命名。
下划线命名法使用下划线来分隔单词,单词全部小写,例如:my_project、hello_world。
3. 其他命名风格除了驼峰命名法和下划线命名法,还有一些其他的命名风格,如匈牙利命名法、帕斯卡命名法等。
这些命名风格在Java工程名的命名中使用较少,不过了解一下也是有益的。
java包命名规则
![java包命名规则](https://img.taocdn.com/s3/m/3141b0d6afaad1f34693daef5ef7ba0d4a736d9a.png)
java包命名规则Java的包命名规则是根据语义和组织架构来命名的,以适应大型项目的开发和维护。
1. 命名规则约定- 包名应全部小写,并使用英文单词或者词组组成。
- 包名使用点(.)分隔开不同的层级,例如:com.example.project。
- 包名应具有唯一性,以确保不会与其他包冲突。
2. 域名倒置命名法- 包名通常使用域名的倒置命名法来命名。
例如,域名是example,那么包名可以使用com.example.project。
- 使用域名作为包名的一部分是为了避免包名的冲突,因为域名通常是唯一的。
3. 语义命名规则- 包名应根据功能或模块的职责来命名,以提供良好的可读性和可维护性。
- 包名应该描述该包中包含的类、接口、枚举等的功能或领域。
- 包名可以使用单词或者词组来描述功能或领域,例如:com.example.project.controller,com.example.project.service等。
4. 层级结构- 包名应该反映出代码的层级结构,以帮助组织和管理代码。
- 通常可以将代码分为通用代码和特定领域的代码,可以按照这个区分来组织包名。
- 例如,可以创建一个common包来存放通用代码,然后在该包下创建更具体的子包,例如common.utils等。
5. 版本控制- 如果需要对项目进行版本控制,可以将版本号添加到包名中。
- 这样可以使不同版本的代码在同一代码库中共存,避免与其他版本的代码冲突。
6. 简洁性和可读性- 包名应该简洁明了,具有良好的可读性和可理解性。
- 避免使用过长的包名,应当尽量使用简短的包名来描述功能或领域。
总结:Java包的命名规则应遵循小写、点分隔、具有语义的规则,以提供良好的组织和可读性。
包名应与功能或领域保持一致,并根据层级进行组织。
包名还可以使用域名倒置命名法和版本控制来确保唯一性和可维护性。
包名应该简洁明了,以提高代码的可读性和可理解性。
java工程名命名规则
![java工程名命名规则](https://img.taocdn.com/s3/m/31b981c3f71fb7360b4c2e3f5727a5e9856a27e4.png)
java工程名命名规则Java工程名命名规则在Java开发中,工程名的命名是非常重要的,因为它可以直接影响到代码的可读性和维护性。
下面是Java工程名命名规则的详细介绍。
一、基本原则1.1 语义化原则工程名应该能够清晰地表达出其所代表的含义,避免使用过于抽象或模糊的名称。
1.2 规范化原则工程名应该符合一定的规范和标准,避免使用不规范或不合法的字符。
二、命名方式2.1 驼峰式命名法驼峰式命名法是Java中最常用的命名方式之一。
其基本规则是将每个单词首字母大写,并将单词连接在一起,形成一个完整的名称。
例如:MyFirstProject。
2.2 下划线式命名法下划线式命名法是另一种常用的Java命名方式。
其基本规则是在每个单词之间添加下划线,并将整个名称全部小写。
例如:my_first_project。
2.3 全部小写或全部大写除了以上两种常用方式外,还可以采用全部小写或全部大写的方式进行命名。
这种方式适合于较短、简单且易于理解的工程名。
三、命名规则3.1 工程名长度工程名应该控制在20个字符以内,避免过长或过短。
3.2 工程名含义工程名应该能够清晰地表达出其所代表的含义,避免使用过于抽象或模糊的名称。
3.3 工程名首字母工程名的首字母应该使用大写字母,以便与Java中的类名进行区分。
3.4 工程名字符工程名只能包含数字、字母和下划线,不能包含其他特殊字符。
3.5 工程名单词工程名中的每个单词应该采用驼峰式命名法或下划线式命名法进行命名。
四、示例以下是一些符合Java工程命名规范的示例:4.1 MyFirstProject:采用驼峰式命名法,清晰地表达出其为第一个项目的含义。
4.2 my_first_project:采用下划线式命名法,清晰地表达出其为一个由多个单词组成的项目的含义。
4.3 HelloWorld:采用全部大写方式进行命名,适合于较短、简单且易于理解的项目。
Java命名规范(非常全面)
![Java命名规范(非常全面)](https://img.taocdn.com/s3/m/894013c027fff705cc1755270722192e45365822.png)
Java命名规范(⾮常全⾯)⽬录1.包命名规范2.类命名规范2.1接⼝命名规范2.2抽象类命名规范2.3异常类命名规范3.⽅法命名规范3.1表述获取3.2表述查询3.3表述条件3.4表述设置3.5其他规范4.变量命名规范5.常量命名规范6.枚举命名规范7.其他命名规范7.1数组7.2表述复数或者集合7.3泛型类7.4接⼝实现类7.5测试类和测试⽅法8扩展:速记Java开发中的各种O前⾔:最近发现很多初级程序员写代码时很不规范,⽐如⽅法名类名等,如果遇到有代码洁癖的领导肯定会被骂(什么垃圾代码),下⾯分享⼀篇不错的规范⽂章我将按照项⽬⼯程⽬录结构,从包,类(接⼝,抽象类,异常类),⽅法,变量和常量的顺序展开介绍。
本⽂是 Java 命名规范的介绍,建议收藏转发。
1. 包命名规范包(Package)的作⽤是将功能相似或相关的类或者接⼝进⾏分组管理,便于类的定位和查找,同时也可以使⽤包来避免类名的冲突和访问控制,使代码更容易维护。
通常,包命使⽤⼩写英⽂字母进⾏命名,并使⽤“.”进⾏分割,每个被分割的单元只能包含⼀个名词。
⼀般地,包命名常采⽤顶级域名作为前缀,例如com,net,org,edu,gov,cn,io等,随后紧跟公司/组织/个⼈名称以及功能模块名称。
下⾯是⼀些包命名⽰例:package org.springframework.boot.autoconfigure.cloudpackage org.springframework.boot.utilpackage org.hibernate.actionpackage org.hibernate.cfgpackage com.alibaba.druidpackage com.alibaba.druid.filterpackage com.alibaba.nacos.client.configpackage com.ramostear.blog.web下⾯是Oracle Java的⼀些常见包命名例⼦:package java.beanspackage java.iopackage ngpackage package java.utilpackage javax.annotation2. 类命名规范类(Class)通常采⽤名词进⾏命名,且⾸字母⼤写,如果⼀个类名包含两个以上名词,建议使⽤驼峰命名(Camel-Case)法书写类名,每个名词⾸字母也应该⼤写。
JAVA程序的命名规则
![JAVA程序的命名规则](https://img.taocdn.com/s3/m/aaae0f06f18583d0496459b4.png)
一、Java程序包名:Package的名字应该都是由小写单词组成,如:text.demo.example具体的示例如下:com.icss下面为平台包。
stmacmbas为本项目的根程序包。
stmacmbas.base为本项目的开发基础包。
merce为商业企业程序包。
stmacmbas.example为示例程序包。
stmacmbas.industry为工业企业程序包。
stmacmbas.stma为国家局程序包。
stmacmbas.util为工具包。
二、文件名。
1.文件名由英文单词组成,每个单词的首字母大写,最好不要超过4个单词,如:ShipOrder.java。
2.Java文件的文件名要与程序中的public类名相同。
3.Servlet文件要以Servlet作为结尾,如:AddCompanyServlet.java。
三、类名:每个单词的首字母大写。
同上。
四、变量名。
1.class变量的命名:变量的名字必须用一个小写字母开头,后面的单词用大写字母开头。
2.static final变量的命名:static final变量的名字应该都大写并且指出完整含义。
3.用有意义的名字命名变量:首先,用完整的英语单词或约定俗成的简写命名变量(不允许用汉语拼音),如:firstName,zipCode。
4.用复数命名Collection类变量。
Collection包括数组,vector 等。
命名时使用复数:customers,classmates。
五、方法名。
1.方法的名字必须用一个小写字母开头,后面的单词用大写字母开头。
2.方法的名字要与该方法的用途相关。
六、参数名。
1.参数的命名:参数的名字必须和变量的命名规范一致。
2.方法的参数:使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字。
java方法名命名规则
![java方法名命名规则](https://img.taocdn.com/s3/m/1ad03ed950e79b89680203d8ce2f0066f53364b7.png)
java方法名命名规则
Java方法是一种用于实现特定功能的代码块。
为了增强程序的可读性和可维护性,编写Java方法时需要遵守一定的命名规则。
下面介绍几个常用的Java方法命名规则:
1. 使用动词开头:方法名应该以动词开头,以表达方法所执行的操作。
例如,对于计算两个数字之和的方法,可以命名为"calculateSum"。
2. 使用驼峰命名规则:方法名中的每个单词首字母大写,其余字母小写,并删除单词之间的空格。
这样可以提高方法名的可读性。
例如,"printFullName"。
3. 使用有意义的名称:方法名应该能够清晰地描述方法的功能,便于其他开发者理解和使用。
避免使用模糊或过于简单的名称,例如"processData"而不是"doStuff"。
4. 遵循命名规范:按照Java编码规范的要求进行命名。
方法名应该使用英文单词,避免使用非ASCII字符或特殊符号。
尽量避免使用缩写,除非它们是广为人知的。
5. 使用一致的命名约定:在整个项目中保持一致的方法命名约定,以提高代码可读性和团队间的协作。
如果项目中已有一套命名约定,则应遵守该约定。
值得注意的是,方法名的命名规则不是硬性规定,而是为了让代码更易读、易于维护和理解。
在编写Java方法时,应根据具体场景和项目需求选择合适的命名方式。
遵循良好的命名规范可以提高代码的质量和可维护性,使代码更易于理解和维护。
java的命名规范
![java的命名规范](https://img.taocdn.com/s3/m/1ccd2c3d02d8ce2f0066f5335a8102d276a261d2.png)
java的命名规范Java的命名规范是一种编码规范,它定义了在Java程序中如何命名变量、方法、类等标识符的规则和准则。
遵循这些规范可以使代码更加易读、易懂和易于维护。
以下是关于Java命名规范的一些指导原则和建议。
1. 包名:包名必须以小写字母开头,且只能包含小写字母、数字和下划线(_),不能以数字开头。
2. 类名:类名必须以大写字母开头,并采用驼峰命名法,即将每个单词首字母大写,其余字母小写。
3. 接口名:接口名与类名相似,也要采用驼峰命名法。
4. 方法名:方法名必须以小写字母开头,并采用驼峰命名法。
5. 变量名:变量名必须以小写字母开头,并采用驼峰命名法。
6. 常量名:常量名应全大写,并用下划线分隔单词。
7. 数组名:数组名要有意义,并采用驼峰命名法。
8. 枚举类型名:枚举类型名要以大写字母开头,并采用驼峰命名法。
9. 枚举常量名:枚举常量名要全大写,多个单词间用下划线分隔。
10. 参数名:参数名应该具有描述性,采用驼峰命名法。
11. 局部变量名:局部变量名应该具有描述性,并采用驼峰命名法。
12. 泛型类型参数名:泛型类型参数名通常使用单个大写字母。
13. 缩写词:对于缩写词,应该采用一致的规则,例如URL、HTTP或XML。
14. 不要使用保留字:不要使用Java的关键字作为标识符。
15. 避免使用单个字符作为名称:使用具有描述性的名称可以使代码更易于阅读和理解。
16. 避免使用下划线作为名称的开头或结尾:这样的命名风格通常用于特殊情况,例如私有变量或常量。
17. 命名要有意义和可读性:命名应该具有描述性,能够准确地反映出变量、方法或类的用途和功能。
18. 遵循团队内部统一的命名规范:在团队中应制定一致的命名规范,并严格遵循。
19. 使用驼峰命名法:驼峰命名法是一种常用的命名约定,可以提高代码的可读性。
20. 注释:对于特别复杂或不容易理解的代码,应添加注释来解释其用途和功能。
总之,Java的命名规范主要是为了提高代码的可读性、可维护性和一致性。
Java各层命名规范
![Java各层命名规范](https://img.taocdn.com/s3/m/2bacb2c7c0c708a1284ac850ad02de80d4d8068a.png)
Java各层命名规范1 领域模型1.1 Controller1 )获取对象的⽅法⽤ query 做前缀。
2 )插⼊的⽅法⽤ add 做前缀。
3 )删除的⽅法⽤ delete 做前缀。
4 )修改的⽅法⽤ modify 做前缀。
1.2 Service1 )获取单个对象的⽅法⽤ get 做前缀。
2 )获取多个对象的⽅法⽤ list 做前缀。
3 )获取统计值的⽅法⽤ count 做前缀。
4 )插⼊的⽅法⽤ save(推荐)或 insert 做前缀。
5 )删除的⽅法⽤ remove(推荐)或 delete 做前缀。
6 )修改的⽅法⽤ update 做前缀。
7 )分页的⽅法⽤ page 做前缀。
1.3 DAO 层命名规约:1 )获取对象的⽅法⽤ select 做前缀。
2 )插⼊的⽅法⽤ insert 做前缀。
3 )删除的⽅法⽤ delete 做前缀。
4 )修改的⽅法⽤ update 做前缀。
2 Result返回对象命名1 )数据对象: xxxDO , xxx 即为数据表名。
2 )数据传输对象: xxxDTO , xxx 为业务领域相关的名称。
3 )展⽰对象: xxxVO , xxx ⼀般为⽹页名称。
4 ) POJO 是 DO /DTO / BO / VO 的统称,禁⽌命名成 xxxPOJO 。
3 各层规约3.1 【参考】分层领域模型规约:· DO(Data Object):与数据库表结构⼀⼀对应,通过 DAO 层向上传输数据源对象。
· DTO(Data Transfer Object):数据传输对象, Service 和 Manager 向外传输的对象。
· BO(Business Object):业务对象。
可以由 Service 层输出的封装业务逻辑的对象。
· VO(View Object):显⽰层对象,通常是 Web 向模板渲染引擎层传输的对象。
· QUERY :数据查询对象,各层接收上层的查询请求。
Java项目命名规范
![Java项目命名规范](https://img.taocdn.com/s3/m/623f09c45022aaea998f0fa2.png)
Java项目命名规范一、命名规范1、项目名全部小写2、包名全部小写3、类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写。
如:public class MyFirstClass{}4、变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。
如:int index=0;public void toString(){}5、常量名全部大写如:public static final String GAME_COLOR=”RED”;6、所有命名规则必须遵循以下规则:1)、名称只能由字母、数字、下划线、$符号组成2)、不能以数字开头3)、名称不能使用JAVA中的关键字。
4)、坚决不允许出现中文及拼音命名。
二、注释规范1、类注释在每个类前面必须加上类注释,注释模板如下:/*** Copyright (C), 2006-2010, ChengDu Lovo info. Co., Ltd.* FileName: Test.java* 类的详细说明** @author 类创建者姓名* @Date 创建日期* @version 1.00*/2、属性注释在每个属性前面必须加上属性注释,注释模板如下:/** 提示信息*/private String strMsg = null;3、方法注释在每个方法前面必须加上方法注释,注释模板如下:/*** 类方法的详细使用说明** @param 参数1 参数1的使用说明* @return 返回结果的说明* @throws 异常类型.错误代码注明从此类方法中抛出异常的说明*/4、构造方法注释在每个构造方法前面必须加上注释,注释模板如下:/*** 构造方法的详细使用说明** @param 参数1 参数1的使用说明* @throws 异常类型.错误代码注明从此类方法中抛出异常的说明*/5、方法内部注释在方法内部使用单行或者多行注释,该注释根据实际情况添加。
Java命名规范
![Java命名规范](https://img.taocdn.com/s3/m/292391f918e8b8f67c1cfad6195f312b3169ebe6.png)
Java命名规范⼀、Java⽂件的命名:1.源代码⽂件名必须与公共类的名字相同。
2.⼀个Java⽂件中只能有⼀个public类;3.如果⽂件中只有⼀个类,⽂件名必须与类名⼀致;4.如果⽂件中不⽌⼀个类,⽂件名必须与public类名⼀致;5.如果⽂件中不⽌⼀个类,⽽且没有public类,⽂件名可与任⼀类名⼀致。
⼆、包的命名:Java包的名字都是由⼩写单词组成。
三、类的命名:类名是以⼤写字母开头的名词。
如果有多个单词组成,每个单词第⼀个字母应该⼤写(骆驼命名法)。
不能使⽤Java保留字作为类名。
四、⽅法的命名:⽅法的名字的第⼀个单词应以⼩写字母作为开头,后⾯的单词则⽤⼤写字母开头。
五、变量的命名:⾸字母是⼩写的,接下来的单词都以⼤写字母开头。
(Camel 标记法)六、常量的命名:常量的名字应该都使⽤⼤写字母,并且指出该常量完整含义。
如果⼀个常量名称由多个单词组成,则应该⽤下划线来分割这些单词。
七、参数的命名:参数的命名规范和⽅法的命名规范相同,⽽且为了避免阅读程序时造成迷惑,请在尽量保证参数名称为⼀个单词的情况下使参数的命名尽可能明确。
注:Java对⼤⼩写敏感java关键字与标识符:关键字:如public、class、static、void等都是关键字;标识符:程序中像⾃⼰定义的变量、⽅法、类名等都是标识符;标识符命名规则:1. 标识符可以包含26个英⽂字母(区分⼤⼩)、0~9的数字、$(美元符)和_(下划线);2. 标识符不能以数字开头;3. 标识符不能是java中的关键字;标识符命名规范:类名:⾸字母⼤写,驼峰式命名;⽅法名:⾸字母⼩写,脱粉是命名;常量名:全部⼤写;变量名:全部⼩写;。
Java项目命名规范
![Java项目命名规范](https://img.taocdn.com/s3/m/5685cddb85254b35eefdc8d376eeaeaad1f316c4.png)
Java项⽬命名规范⼀、项⽬名称最好⽤英⽂,所有单词全部⽤⼩写,如testjavaproject、studentmanagement等,当然也也可以⽤中⽂,如“学⽣管理系统”、”进销管理系统“等。
⼆、Java project中相关命名1、包名:全部⼩写字母,最好⽤域名反过来写,不会冲突。
如blogs.lionestking.myutil等。
2、类名:每个单词⾸字母均⼤写,且public类应⽤项⽬同名.3、⽅法名和对象名(变量名):除第⼀个单词⾸字母⼩写外(若只能⼀个单词,就全部⼩写),其余单词⾸字母均⼤写。
⽅法名采⽤动词+名词或动词表⽰,如append()、getName()等。
4、属性名:和对象命名⽅法相同,采⽤名词或形容词+名词的形式表⽰,如name、dbClassName、dbUser、dbPassword、dbUrl等。
5、常量:均⼤写,可以加⼀些前缀,以_进⾏分隔。
三、属性⽂件.properties定义变量命名object.a_b_c格式,全部⼩写,其中object是宿主,a_b_c多个单词下划线分开。
例:e_second_level_cache,hibernate.cache.provider_class,hibernate.cache.provider_configuration_file_resource_path 四、xml⽂件命名全部⼩写,-符号是其xml的⽤途说明,类似applicationContext属习惯命名。
⽐如springmvc-servlet.xml、workdesk-manager.xml、workdesk-servlet.xml、applicationContext-basic.xml等xml⾥的内容多个字符间以-隔开,⽐如param-name,filter-mapping等。
五、普通⽂件命名(jsp,js,img等)和java普通变量规范相同。
六、属性⽂件properties以下划线隔开:errors_zh_CN.properties,hibernate_test.properties六、数据库命名:表、字段命名全部⼤写,多个单词以_隔开。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
java项目命名规范2009-07-27 13:31规范等级说明级别I: 默认登记要求所有项目中的所有成员遵守。
级别II: 建议所有项目中的所有成员遵守。
级别III: 鼓励各个项目根据实际情况执行。
1.格式与命名规范(Formating and Naming Conventions)1.1 缩进使用Tab缩进,而不是空格键--将缩进2,4,8字符的选择权留给阅读者。
1.2 换行每行120字符--因为已是1024*768的年代。
if,for,while语句只有单句时,如果该句可能引起阅读混淆,需要用" {"和"}"括起来,否则可以省略。
//错误,需要使用花括号{}括起来if (condition)if(condition) doSomething();elsedoSomething();1.3 命名规则遇到缩写如XML时,仅首字母大写,即loadXmlDocument()而不是loadXMLDocument()Package名必须全部小写,尽量使用单个单词Interface名可以是一个名词或形容词(加上'able','ible', or 'er'后缀),如Runnable,Accessible。
为了基于接口编程,不采用首字母为I或加上IF后缀的命名方式,如IBookDao,BookDaoIF。
局部变量及输入参数不要与类成员变量同名(get/set方法与构造函数除外)1.4 声明修饰符应该按照如下顺序排列:public, protected, private, abstract, static, final, transient, volatile, synchronized, native, strictfp。
类与接口的声明顺序(可用Eclipse的source->sort members功能自动排列):静态成员变量/ Static Fields静态初始化块/ Static Initializers成员变量/ Fields初始化块/ Initializers构造器/ Constructors静态成员方法/ Static Methods成员方法/ Methods类型(内部类) / Types(Inner Classes)同等的类型,按public, protected, private的顺序排列。
2.注释规范(Document Convertions)2.1 注释类型2.1.1 JavaDoc注释略。
2.1.2 失效代码注释由/*...*/界定,标准的C-Style的注释。
专用于注释已失效的代码。
/** Comment out the code* String s = "hello";* System.out.println(s);*/2.1.3 代码细节注释由//界定,专用于注释代码细节,即使有多行注释也仍然使用//,以便与用/**/注释的失效代码分开除了私有变量外,不推荐使用行末注释。
class MyClass {private int myField; // An end-line comment.public void myMethod {//a very very long//comment.if (condition1) {//condition1 comment...} else {//elses condition comment...}}}2.2 注释的格式注释中的第一个句子要以(英文)句号、问号或者感叹号结束。
Javadoc生成工具会将注释中的第一个句子放在方法汇总表和索引中。
为了在JavaDoc和IDE中能快速链接跳转到相关联的类与方法,尽量多的使用@see xxx.MyClass,@see xx.MyClass#find(String)。
Class必须以@author 作者名声明作者,不需要声明@version与@date,由版本管理系统保留此信息。
(II)如果注释中有超过一个段落,用<p>分隔。
(II)示例代码以<pre></pre>包裹。
(II)标识(java keyword, class/method/field/argument名,Constants) 以<code></code>包裹。
(II)标识在第一次出现时以{@linkxxx.Myclass}注解以便JavaDoc与IDE中可以链接。
(II)2.3 注释的内容2.3.1 可精简的注释内容注释中的每一个单词都要有其不可缺少的意义,注释里不写"@param name -名字"这样的废话。
如果该注释是废话,连同标签删掉它,而不是自动生成一堆空的标签,如空的@param name,空的@return。
2.3.2 推荐的注释内容对于API函数如果存在契约,必须写明它的前置条件(precondition),后置条件(postcondition),及不变式(invariant)。
(II)对于调用复杂的API尽量提供代码示例。
(II)对于已知的Bug需要声明。
(II)2.3.3 Null规约如果方法允许Null作为参数,或者允许返回值为Null,必须在JavaDoc中说明。
如果没有说明,方法的调用者不允许使用Null作为参数,并认为返回值是Null Safe的。
/*** 获取对象.** @ return the object to found or null if not found.*/Object get(Integer id){...}2.3.4 特殊代码注释代码质量不好但能正常运行,或者还没有实现的代码用//TODO: 或//XXX:声明存在错误隐患的代码用//FIXME:声明3.编程规范(Programming Conventions)3.1基本规范当面对不可知的调用者时,方法需要对输入参数进行校验,如不符合抛出IllegalArgumentException,建议使用Spring的Assert系列函数。
隐藏工具类的构造器,确保只有static方法和变量的类不能被构造变量定义尽量基于接口而不是具体实现类,如Map map = new HashMap()代码中不能使用System.out.println(),e.printStackTrace(),必须使用logger打印信息。
3.2 异常处理重新抛出的异常必须保留原来的异常,即throw new NewException("message",e); 而不能写成throw new NewException("message")。
在所有异常被捕获且没有重新抛出的地方必须写日志。
如果属于正常异常的空异常处理块必须注释说明原因,否则不允许空的catch块。
框架尽量捕获低级异常,并封装成高级异常重新抛出,隐藏低级异常的细节。
(III) 3.3 代码度量3.3.1 耦合度度量DAC度量值不要不大于7 ( III )解释:DAC(Data Abstraction Coupling)数据抽象耦合度是描述对象之间的耦合度的一种代码度量。
DAC度量值表示一个类中有实例化的其它类的个数。
CFO度量值不要不大于20 ( III )解释:CFO(Class Fan Out)类扇出是描述类之间的耦合度的一种代码度量。
CFO 度量值表示一个类依赖的其他类的个数。
3.3.2 方法度量方法(构造器)参数在7个以内( II )太多的方法(构造器)参数影响代码可读性,还是不良设计的征兆。
考虑用值对象代替这些参数,或者重新设计。
方法长度150行以内( II )太长的方法影响代码可读性,还是一个方法承担了太多责任的征兆。
建议拆分责任。
CC 度量值不大于10(III )解释:CC(CyclomaticComplexity)圈复杂度指一个方法的独立路径的数量,可以用一个方法内if,while,do,for,catch,switch,case,?:语句与&&,||操作符的总个数来度量。
NPath度量值不大于200 ( III )解释:NPath度量值表示一个方法内可能的执行路径的条数。
3.3.3 其他度量布尔表达式中的布尔运算符(&&,||)的个数不超过3个(III)if语句的嵌套层数3层以内(II)文件长度2000行以内(II)太大的源程序文件影响代码可读性,还是一个类承担了太多责任的征兆,建议拆分责任到其他类上。
匿名内部类20行以内( II )太长的匿名内部类影响代码可读性。
建议:重构为命名的(普通)内部类。
3.4 JDK5.0重载方法必须使用@Override,可避免父类方法改变时导致重载函数失效。
不需要关心的warning报告用@SuppressWarnings("unused"),@SuppressWarnings("unchecked"),@SuppressWarni ngs("serial") 注释掉4.自动代码检查使用Eclipse 与Inellij IDEA的代码校验已经可以查出很多的代码质量问题。
再配合使用Checkstyle,PMD,FindBugs三重检查,涵盖了大部分的代码GuideLine。
Eclipse:在Windows->Preferences->Java-Compiler->Errors/Warnings中,按本文档的规则将一些原来Ignore的规则打开。
IDEA:在Setting->Errors中设定规则,调用Analyzer->Inspece Code进行校验。
CheckStyle:安装CheckStyle的Eclipse插件,在Windows->Preferences->CheckStyle 导入springside团队预设在/tools/codereviewer/springside_check.xml的规则PMD:安装PMD的Eclipse插件,Windows->Preferences->PMD清除原来所有规则,导入springside团队预设在/tools/codereviewer/springside_pmd.xml的RuleSet。
FindBugs:安装FindBugs的Eclipse插件,在项目属性->FindBugs中,取消下列警告MS/EI/EI2/ ,SnVI/SE/WS/RS ,ST/NP/UwF/SS/UuF|UrF|SIC。