定义规范的目的是为了使项目的代码样式统一,使程序有良好的可读性。

包的命名  (全部小写,由域名定义)

Java包的名字都是由小写单词组成。但是由于Java面向对象编程的特性,每一名Java程序员都 可以编写属于自己的Java包,为了保障每个Java包命名的唯一性,在最新的Java编程规范中,要求程序员在自己定义的包的名称之前加上唯一的前缀。 由于互联网上的域名称是不会重复的,所以程序员一般采用自己在互联网上的域名称作为自己程序包的唯一前缀。

例如:net.frontfree.javagroup

类的命名 (单词首字母大写)

根据约定,Java类名通常以大写字母开头,如果类名称由多个单词组成,则每个单词的首字母均应为大 写例如TestPage;如果类名称中包含单词缩写,则这个所写词的每个字母均应大写,如:XMLExample,还有一点命名技巧就是由于类是设计用来 代表对象的,所以在命名类时应尽量选择名词。

例如: Graphics

方法的命名(首字母小写,字母开头大写)

方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头。

例如:drawImage

常量的命名 (全部大写 ,常加下划线)

常量的名字应该都使用大写字母,并且指出该常量完整含义。如果一个常量名称由多个单词组成,则应该用下划线来分割这些单词。

例如:MAX_VALUE

参数的命名

参数的命名规范和方法的命名规范相同,而且为了避免阅读程序时造成迷惑,请在尽量保证参数名称为一个单词的情况下使参数的命名尽可能明确。

Javadoc注释

Java除了可以采用我们常见的注释方式之外,Java语言规范还定义了一种特殊的注释,也就是我们 所说的Javadoc注释,它是用来记录我们代码中的API的。Javadoc注释是一种多行注释,以/**开头,而以*/结束,注释可以包含一些 HTML标记符和专门的关键词。使用Javadoc 注释的好处是编写的注释可以被自动转为在线文档,省去了单独编写程序文档的麻烦。

例如:

/**

* This is an example of

* Javadoc

* @author darchon

* @version 0.1, 10/11/2002

*/

在每个程序的最开始部分,一般都用Javadoc注释对程序的总体描述以及版权信息,之后在主程序中 可以为每个类、接口、方法、字段添加 Javadoc注释,每个注释的开头部分先用一句话概括该类、接口、方法、字段所完成的功能,这句话应单独占据一行以突出其概括作用,在这句话后面可以跟 随更加详细的描述段落。在描述性段落之后还可以跟随一些以Javadoc注释标签开头的特殊段落,例如上面例子中的@auther和@version,这 些段落将在生成文档中以特定方式显示。

变量的命名

主要的的命名规范有以下三种:

Camel 标记法:首字母是小写的,接下来的单词都以大写字母开头

Pascal 标记法:首字母是大写的,接下来的单词都以大写字母开头

匈牙利标记法:在以Pascal标记法的变量前附加小写序列说明该变量的类型

在Java我们一般使用匈牙利标记法,基本结构为scope_typeVariableName,它 使用1-3字符前缀来表示数据类型,3个字符的前缀必须小写,前缀后面是由表意性强的一个单词或多个单词组成的名字,而且每个单词的首写字母大写,其它字 母小写,这样保证了对变量名能够进行正确的断句。例如,定义一个×××变量,用来记录文档数量:intDocCount,其中int表明数据类型,后面为表 意的英文名,每个单词首字母大写。这样,在一个变量名就可以反映出变量类型和变量所存储的值的意义两方面内容,这使得代码语句可读性强、更加容易理解。 byte、int、char、long、float、 double、boolean和short。

数据类型/前缀(附)

byte b

char c

short sh

int i

long l

char c

string s

float f

double d

hashtable h

[] arr

List lst

Vector v

StringBuffer sb

Boolean b

Byte bt

Map map

Object ob

对于在多个函数内都要使用的全局变量,在前面再增加“g_”。例如一个全局的字符串变量:g_strUserInfo。

在变量命名时要注意以下几点:

· 选择有意义的名字,注意每个单词首字母要大写。

· 在一段函数中不使用同一个变量表示前后意义不同的两个数值。

· 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命名规范相关推荐

  1. java中boolean布尔变量的命名规范isget

    [强制]POJO 类中的任何布尔类型的变量,都不要加 is 前缀,否则部分框架解析会引起序列 化错误. 说明:在本文 MySQL 规约中的建表约定第一条,表达是与否的变量采用 is_xxx 的命名方式 ...

  2. Java中开根号,你还记得吗

    目录 前言 一.了解根号运算 二.Java开根号 1.Math.sqrt()开平方根 2.Math.pow()开根号 3.牛顿迭代法来近似求解平方根 总结 前言 开根号相信大家都不陌生,这是一种数学运 ...

  3. Class java用法,java中Class的三种实例化

    1.调用Object类中的getClass()方法:import java.util.Date; public class ReflectTest3 { public static void main ...

  4. Java中对象的三种状态

    转载自   Java中对象的三种状态 Java中的对象的三种状态是和垃圾回收紧密相关的,因此有必要深究. 状态一:可触及态:从根节点开始,可以搜索到这个对象,也就是可以访问到这个对象,也有人将其称为可 ...

  5. Java中final的三种用法

    在java中final的三种用法: 1. final成员变量 2. final函数 3. final类 final成员变量 当你在类中定义变量时,在其前面加上final关键字,那便是说这个变量一旦被初 ...

  6. java中break什么意思_Java中break的第三种用法说明

    在Java中,break语句有三种用法,第一种是用于终止switch语句中的语句序列,第二种是用于退出循环,然而第三种是用作goto语句的"文明"形式! 我们知道,goto语句会破 ...

  7. java构造方法命名_Java命名规范

    一.命名规范 1. 项目名全部小写 2. 包名全部小写 3. 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写. 如:public class MyFirstClass{} 4. 变量 ...

  8. java 方法命名规范_Java命名规范

    一.命名规范 1. 项目名全部小写 2. 包名全部小写 3. 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写. 如:public class MyFirstClass{} 4. 变量 ...

  9. java get set is_javaBean中的get/set的命名规范

    [转] 最近的struts项目中遇到了这样的问题: 我的action中全局变量明明有getset方法,而且是自动生成的,但是在使用的时候,总是说找不到这个属性的getset方法,取不到从jsp传来 的 ...

最新文章

  1. 如何解决现有的问题——VBA课程第五次讨论2007年12月13日
  2. 常用控件产品官方文档/手册/API列表 c#控件文档API列表 asp.net控件产品技术文档中文版...
  3. SVN账号重新指定方法
  4. 008_JsonConfig对象
  5. 有一句说一千句,是作家....
  6. 查询成绩小于85且是计算机的一项应用,查询练习2
  7. spring boot 整合Dubbo/Zookeeper
  8. 【LetCode算法修炼】Two Sum
  9. Android开发笔记(一百二十二)循环器视图RecyclerView
  10. 2020中国数字化转型优秀案例征集
  11. UnboundLocalError: local vaiable 'XX' reference...
  12. 2020-09-10 保证软件开发过程遵循ISO 26262标准的十个主要进阶步骤
  13. MIMO-OTFS in High-Doppler Fading Channels:Signal Detection and Channel Estimation(5)
  14. 股市最好用的大数据软件_最实用的5款炒股软件
  15. 密歇根州立大学被黑 个人信息和社保号码被盗
  16. 模拟信号幅度调制之AM
  17. java 时区 夏令时_关于时区:如何显示Java开始夏令时后的时间差异?
  18. STM32 F103 外部晶振8M改为12M
  19. Win7 各种语言包下载
  20. Java官方教程(七-3)Using Objects 使用对象(2021.4.10)

热门文章

  1. 【Socket网络编程】11.网络编程中的 数据封装 和 数据拆封
  2. 说说 JAVA 代理模式
  3. java list循环中删除元素的坑
  4. JSONObject、JSONArray区别
  5. 为什么文件名要小写?
  6. 从零开始学习jQuery (九) jQuery工具函数
  7. Python图像处理库PIL -- 学习资源
  8. 机器学习的数学基础(1)--Dirichlet分布
  9. SIFT(ASIFT) Matching with RANSAC
  10. 如何设计一门语言(十)——正则表达式与领域特定语言(DSL)