`
freeze06
  • 浏览: 10562 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

JAVA命名规范的重要

阅读更多

    最近使用jstl忽然发现有属性值取不到。。提示使用Struts的标签却能取到。困扰了很久。后来发现是bean里面属性值将首字母大写造成jtsl找不到相应的属性值。特地查了一下java的命名规范。说实话以前知道java的命名规范基本能按照规范写,但一直认为仅仅是看得方便代码风格统一的问题,没想到会造成这样的影响。特地摘录下来引以为戒

Property 'task_AffuthorID' not found on type

 

 

 

java命名规范

1.包命名:全部字母小写:cn.package.bean
2.类命名:单词的首字母大写:SimpleBean
3.属性名称:第一个单词的首字母小写,之后每个单词的首字母大写studentName
4.方法命名:与属性命名相同:public void sayHello()
5.常量命名:全部单词大写:final String DBDRIVER="zhangde"  

包的命名      

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

类的命名     

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

方法的命名     

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

常量的命名   

常量的名字应该都使用大写字母,并且指出该常量完整含义。如果一个常量名称由多个单词组成,则应该用下划线来分割这些单词。   
例如:    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,这些段落将在生成文档中以特定方式显示。


变量和常量命名

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

变量类型和首字母对照关系如下表:

数据类型/对象类型 / 变量前缀 / 备注   

byte bye   
char chr   
float flt   
boolean bln 做布尔变量时,使用bln   
Integer/int int     
String str   
Single sng   
short sht   
Long/long lng   
Double/double dbl   
Currency cur   
Variant bln      astr      obj      vnt 做布尔变量用时,用bln,做字符串数组用时,用astr,做为对象使用时,用obj,不确定时,用vnt。

对于数组,在数据类型的前缀前再增加一个a,例如字符串数组为astr。对于在多个函数内都要使用的全局变量,在前面再增加“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。  

原文地址:http://hi.baidu.com/94463874/blog/item/04c161a7fd306997d143588e.html

   

分享到:
评论

相关推荐

    C#、java命名规则和开发习惯

    C#、java命名规则和开发习惯,编程成功的第一步,重要性我就不说了。

    Java命名规范

    这是一篇说明Java中命名规范的说明,这对初学者养成良好的代码编写习惯非常重要,在文档中已详细的说明举例,欢迎下载共同学习。

    java命名范例

    java命名规范很重要,这个文档能解决命名不规范问题,让你的java程序更规范,更标准

    Java代码命名规范详解含详细示例

    在Java编程中,代码命名规范的重要性不容忽视。它不仅影响着代码的可读性和可维护性,还直接关系到项目的开发效率和团队协作的顺畅性。一个遵循良好命名规范的代码库,可以使开发者更快速地理解代码意图、减少错误、...

    java命名规范

    提出javaEE的命名规范,便于开发者相互之间交流,有助于规范化,在团队开发时尤为重要

    谈谈变量命名规范的重要性

    下面小编就为大家带来一篇谈谈变量命名规范的重要性。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    JavaSE安装包(3) 包括scala-SDK,向日葵(远程工具),阿里Java代码规范等

    它包含了一系列关于程序命名、代码注释、代码格式、异常处理、安全性等方面的规范要求和最佳实践。阿里Java代码规范旨在提高代码的可读性、可维护性和稳定性,使得团队协作和代码维护更加高效和一致。 这些工具和...

    自考04747《Java语言程序设计》课后习题答案全集.doc

    1.4 说出JAVA源文件的命名规则。 5 1.6 JAVA语言使用什么字符集?共有多少个不同的字符? 5 1.7 JAVA语言标识符的命名规则是什么? 6 1.8 JAVA有那些基本数据类型,它们的常量又是如何书写的? 6 1.9 指出下列内容...

    Java编码规范

    详细提供了Java编写的规范,编码规范对于程序员而言尤为重要。命名规范使程序更易读,从而更易于理解

    Java优化编程(第2版)

    1.10 方法、变量与常量的命名规则 1.10.1 方法的命名规则 . 1.10.2 变量的命名规则 1.10.3 常量的命名规则 1.11 java编程实践 1.11.1 访问实例与类中变量的规则 1.11.2 引用类中的静态变量与方法的 …… 小结 第4...

    匈牙利命名法

    具体的细则如下: 匈牙利命名法是一种编程时的命名规范。基本原则是:变量名=属性+类型+对象描述,其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分。命名要基于容易记忆容易理解的原则。...

    Java SE查阅手册.pdf

    另外,总结的命名规范参考了最新版《阿里巴巴泰山版java开发手册》。 笔记适合了解Java或者有学过其他编程语言的Java初学者学习,多线程与IO的提高笔记与Spring的笔记还在总结当中,另外Linux、MySQL的笔记以后也会...

    阿里巴巴java开发手册

    《阿里巴巴Java开发手册》是一份非常重要的文档,它为Java开发者提供了一系列规范和最佳实践,帮助他们编写高质量、高效率的Java代码。这个手册覆盖了从命名规范到异常处理、并发控制、代码风格等各个方面。以下是对...

    第1章-Java语言概述-Java面向对象程序设计教程-微课视频版-程杰-清华大学出版社.pptx

    在这一年中Sun发布了JSP/Servlet、EJB规范以及将Java分成了J2EE、J2SE和J2ME。标志着Java已经吹响了向企业、桌面和移动3个领域进军的号角。 1.1 Java的诞生与发展 第1章-Java语言概述-Java面向对象程序设计教程-微课...

    JAVA基础课程讲义

    命名规则(规范) 25 基本数据类型(primitive data type) 26 整型变量 26 浮点型 27 字符型(2个字节): 28 boolean类型 29 运算符(operator) 29 二元运算符 29 一元运算符 30 布尔逻辑表达符 30 位运算符 30 扩展...

    JAVA配置文件编写说明文档.pdf

    此文档只针对XML配置文件的编写做说明 使用本文档时在Word中请选择使用文档结构图,在AcrobatReader... 所有标签符合Java命名规则,首字母小写,以后每个单词的第一个字母大写。属性的书 写规则由配置文件里定义。

    JAVA配置文件编写说明文档

    􀂗 此文档只针对XML配置文件的编写做说明􀂗 使用本文档时在Word中请选择使用文档结构图,... 所有标签符合Java命名规则,首字母小写,以后每个单词的第一个字母大写。属性的书写规则由配置文件里定义。

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    第8章 Java中的包(Package)命名习惯和注释 193 教学视频:43分钟 8.1 Java中的包(Package) 193 8.1.1 Java中的包 193 8.1.2 在Eclipse中使用包 194 8.1.3 天上掉下个package 197 8.1.4 包带来了什么? 197...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    第8章 Java中的包(Package)命名习惯和注释 193 教学视频:43分钟 8.1 Java中的包(Package) 193 8.1.1 Java中的包 193 8.1.2 在Eclipse中使用包 194 8.1.3 天上掉下个package 197 8.1.4 包带来了什么? 197...

Global site tag (gtag.js) - Google Analytics