想要成为一个优秀的程序员,首先要培养良好的编程习惯,为了提高代码的可读性,必须有好的命名规范。

这篇文章是小编结合网上的很多资料整理出来的,若有不当或错误的地方,欢迎大家指正

在文章开始前,为方便阅读,先简单介绍一点知识

驼峰命名法:驼峰命名法就是当变量名或函数名是由一个或多个单字连结在一起,而构成的一识别字时,第一个单字以小写字母开始,第  二个单字的首字母大写或每一个单字 的首字母都采用大写字母例如:myFirstProject。

java命名规范:

项目名:

          1:一部分人采用简写,然后全部大写;

           2:一部分人使用首字母大写+驼峰命名法

包名:[全部小写,域名起头]

     :包名全部小写;

      :Package第一部分通常是顶级域名之一,如com、edu、gov、mil、net、org,后续部分由各组织内部命名规则决定,内部命名规则 指定了各组件的目录名,所属部名

项目名等。例如:com.frontfree.javagroup;

     :关于j2ee中包的命名习惯,我在网上看到一篇博客,很详细的汇总了j2中各个方面包的命名规范,给大家个网址:

http://blog.csdn.net/yilvqingtai/article/details/7989618

类名:[首字母大写+驼峰命名法]

        根据约定,Java类名通常以大写字母开头,如果类名称由多个单词组成,则每个单词的首字母均应为大 写例如TestDemo;如果类名称中  包含单词缩写,则这个所写词

的每个字母均应大写,例如DOMDemo。

接口:[首字母大写+驼峰命名法]

       :接口名的命名规范与类名一致;

        :使用完整的英文描述命名接口。

方法:[驼峰命名+顾名思义]

       :首字母小写,其他单词首字母大写,如:getName();

       : 使用完整的描述来准确描述方法名,看到方法名就该知道这个方法的功能,例如:getNameByIdFromDB() 一看就知道是通过id   从数据库中获取name,虽然有点长,但 对后期理解和维护提供了极大方便,当然,为了防止代码冗长,还是应该尽量缩短名称长度,可以使用缩写的地方尽量使用缩写;

       3:方法名应该是一个动词+名词,例如getName();

      : 前缀问题

           I:类的获取方法(有返回值的方法)的方法名一般加前缀get,如:getRootNode();

           II:类的布尔型判断方法一般以is为前缀,如isEmopty();

          III:类的设置方法加前缀set,如setName();

          IV:一般方法,使用完整的英文描述说明方法功能,以单词开头,如:openFile();

方法的参数:

        :使用有特定意义的词定义方法参数,如果可能的话使用与被赋值变量相同的名字;

        ;首字母小写,其他单词首字母大写

普通变量:[驼峰命名+顾名思义+前缀]

      :采用驼峰命名;

      :变量名要尽量简短,并且可以顾名思义,避免使用a,b,c等;

      :避免相似或只在大小写上有区别,例如:flag和Flag,避免同时使用;

      4: 循环计数变量使用i,j,k

      5:前缀问题:

            I:可以在变量名前加2到3个字母的前缀表示变量的数据类型,例如:strClassName(以此表示String型)、intStudentAge(表示int型)等等;


           II:可以通过加前缀区分全局变量和局部变量,用g_表示全局变量,如g_strClassName。鉴 于全局变量难以维护,应该尽少全局变量的使用。

    :后缀问题:

          I:为了创建统一的变量,通常在变量名后加一个量词后缀,例如strStudentFirst,strStudentLast,而不要使用strFirstStudent

            常用的量词后缀有First,Next,Prev,Last,Cur(一组变量中的当前变量)

静态变量:[全部大写,常加下划线]

      1:全部大写,单词间用"_"连接,例如 static int THREAD_FLAG

      :其他规则参照普通变量的规则2,3,5,6

常量:[全部大写,常加下划线]

      :全部大写,单词间用"_"连接;

     :常量本身要用有意义的单词定义;

   

xml:

     :xml文件名全小写;

jsp/js等普通文件:

     :与class命名规则一致;

java编程规范之java命名规范的更多相关文章

  1. java开发规范总结_命名规范

    规范需要平时编码过程中注意,是一个慢慢养成的好习惯 1.文件 1.属性文件后缀为properties,并且符合java中i18n的规范:   2.对于各产品模块自己的配置文件必须放置在自己模块的con ...

  2. Java基础入门 - 标识符及其命名规范

    类名.变量名.方法名都称为标识符 标识符命名规范: 由字母(A-Z或a-z).数字.下划线(_)和美元符($)中的一种或多种组合而成 不可以数字开头 大小写敏感 关键字不能用作标识符 合法标识符如:D ...

  3. JAVA 增删改查接口命名规范(dao层与 service 层

    开发时,有很多规范,这里写的是命名规范. Dao 接口命名   insert batchInsert selectOne selectById count selectList update dele ...

  4. Java编程-第一个Java程序

    Java编程用到的IDE是Eclipse. 关于第一个Java程序实现的简单流程: (1)    下载eclipse (2)    File-New-Java Project 命名工程名字:Hello ...

  5. 开始JAVA编程的敲门砖——JAVA开发环境搭建

    从头开始的java编程--JAVA开发环境搭建 一.什么是java的开发环境? 顾名思义java的开发环境是提供并保证整个java程序开发运行的必要的环境,搭建java开发环境是开始java编程的敲门 ...

  6. HTML编码规范 - (WEB前端命名规范)

    HTML编码规范 (一)命名规则: 头:header 内容:content/container 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wr ...

  7. 200-Java语言基础-Java编程入门-005 | Java方法定义及使用

    一.方法概述和格式说明 为什么要用方法: 提高代码的复用性 什么是方法: 完成特定功能的代码块 方法的格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) {     方 ...

  8. JAVA编程学习之JAVA集合

    一.JAVA集合类 为了保存数量不确定的数据,以及保存具有映射关系的数据(关联数组),java提供了集合类.所有集合类位于java.util包下. 集合类就像容是器,现实生活中容器的功能,无非就是添加 ...

  9. win7中java编程工具安装 java环境变量设置

    一.下载java 官方地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u26-download-400750.html ...

  10. 200-Java语言基础-Java编程入门-006 | Java数组定义及使用(引用数据类型)

    一.数组概述和定义格式说明 为什么要有数组(容器): 为了存储同种数据类型的多个值 数组概念: 数组是存储同一种数据类型多个元素的集合.也可以看成是一个容器. 数组既可以存储基本数据类型,也可以存储引 ...

随机推荐

  1. 找工作笔试面试那些事儿(8)---常问的CC++基础题

    这一部分是C/C++程序员在面试的时候会被问到的一些题目的汇总.来源于基本笔试面试书籍,可能有一部分题比较老,但是这也算是基础中的基础,就归纳归纳放上来了.大牛们看到一笑而过就好,普通人看看要是能补上 ...

  2. A亚马逊WS网上系列讲座——怎么样AWS云平台上千万用户的应用建设

    用户选择云计算平台构建应用程序的一个重要原因是高弹性的云平台和可扩展性. 面向Internet应用程序通常需要支持用户使用大量,但要建立一个高度可扩展.具有一定的挑战,高度可用的应用程序,只有立足AW ...

  3. veridata实验举例(6)验证agent启动先后顺序是否对捕获update操作有影响

    veridata实验举例(6)验证agent启动先后顺序是否对捕获update操作有影响 续接veridata实验系列  上篇:"veridata实验举例(5)改动主键上的列值.update ...

  4. WPF点滴

    1 设置窗体的最大化,而且无边框 <Style x:Key="WindowsStyle" TargetType="Window"> <Sett ...

  5. 辛星解读为什么PHP须要模板

    近期有个人问我:为什么PHP须要模板呢?整个站点的编写都是我一个人完毕的,从前端到后端,都是这样,我一个人写站点是不是就不须要模板了呢?我当时还真给问住了,也没想好非常合适的回答它的方式,于是就随便说 ...

  6. Android 之流媒体播放器,广播侧下方这么简单。

    没有其他的.希望从事流媒体开发案例.还承诺提供朋友博客.上个星期.制定出最后一点机会. 在这里,与大家分享. 首先要明白的概念:什么是流媒体?转载请注明出处http://blog.csdn.net/g ...

  7. 使用.netFx4.0提供的方法解决32位程序访问64位系统的64位注册表

    原文:使用.netFx4.0提供的方法解决32位程序访问64位系统的64位注册表 我们知道目标平台是32位的程序运行在64位的系统上,去访问部分注册表的时候系统自动重定向到win32node节点对应的 ...

  8. HT for Web嵌入QtWebKit的client解决方式

    HTML5已经足够强大,但非常多应用还是须要独立桌面client的解决方式,毕竟能操作本地文件等功能还是非常多工具类软件短期内无法全然採用云方案替代. 近期Adobe公布的http://bracket ...

  9. UVA 11427 - Expect the Expected(概率递归预期)

    UVA 11427 - Expect the Expected 题目链接 题意:玩一个游戏.赢的概率p,一个晚上能玩n盘,假设n盘都没赢到总赢的盘数比例大于等于p.以后都不再玩了,假设有到p就结束 思 ...

  10. IP Camera 和 Web Camera 差分

    一直以来,,没太注意IP camera 和 Web Camera之间的差,这两个摄像头,昨天晚上.闲来无事Google少数,我们发现,还有两者之间的差异. 1) IP Camera IP Camera ...