java编程规范之java命名规范
想要成为一个优秀的程序员,首先要培养良好的编程习惯,为了提高代码的可读性,必须有好的命名规范。
这篇文章是小编结合网上的很多资料整理出来的,若有不当或错误的地方,欢迎大家指正
在文章开始前,为方便阅读,先简单介绍一点知识
驼峰命名法:驼峰命名法就是当变量名或函数名是由一个或多个单字连结在一起,而构成的一识别字时,第一个单字以小写字母开始,第 二个单字的首字母大写或每一个单字 的首字母都采用大写字母例如: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命名规范的更多相关文章
- java开发规范总结_命名规范
规范需要平时编码过程中注意,是一个慢慢养成的好习惯 1.文件 1.属性文件后缀为properties,并且符合java中i18n的规范: 2.对于各产品模块自己的配置文件必须放置在自己模块的con ...
- Java基础入门 - 标识符及其命名规范
类名.变量名.方法名都称为标识符 标识符命名规范: 由字母(A-Z或a-z).数字.下划线(_)和美元符($)中的一种或多种组合而成 不可以数字开头 大小写敏感 关键字不能用作标识符 合法标识符如:D ...
- JAVA 增删改查接口命名规范(dao层与 service 层
开发时,有很多规范,这里写的是命名规范. Dao 接口命名 insert batchInsert selectOne selectById count selectList update dele ...
- Java编程-第一个Java程序
Java编程用到的IDE是Eclipse. 关于第一个Java程序实现的简单流程: (1) 下载eclipse (2) File-New-Java Project 命名工程名字:Hello ...
- 开始JAVA编程的敲门砖——JAVA开发环境搭建
从头开始的java编程--JAVA开发环境搭建 一.什么是java的开发环境? 顾名思义java的开发环境是提供并保证整个java程序开发运行的必要的环境,搭建java开发环境是开始java编程的敲门 ...
- HTML编码规范 - (WEB前端命名规范)
HTML编码规范 (一)命名规则: 头:header 内容:content/container 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wr ...
- 200-Java语言基础-Java编程入门-005 | Java方法定义及使用
一.方法概述和格式说明 为什么要用方法: 提高代码的复用性 什么是方法: 完成特定功能的代码块 方法的格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) { 方 ...
- JAVA编程学习之JAVA集合
一.JAVA集合类 为了保存数量不确定的数据,以及保存具有映射关系的数据(关联数组),java提供了集合类.所有集合类位于java.util包下. 集合类就像容是器,现实生活中容器的功能,无非就是添加 ...
- win7中java编程工具安装 java环境变量设置
一.下载java 官方地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u26-download-400750.html ...
- 200-Java语言基础-Java编程入门-006 | Java数组定义及使用(引用数据类型)
一.数组概述和定义格式说明 为什么要有数组(容器): 为了存储同种数据类型的多个值 数组概念: 数组是存储同一种数据类型多个元素的集合.也可以看成是一个容器. 数组既可以存储基本数据类型,也可以存储引 ...
随机推荐
- DOM - Element 对象
http://www.runoob.com/dom/dom-element.html Element 对象 Element 对象代表 XML 文档中的一个元素.元素可以包含属性.其他元素或文本.如果一 ...
- iptables 小结
最近工作上一个作业用到了iptables命令,主要进行端口映射,在网上查了好多资料,尽管有很多例子,但还是整了好几天才整明白.在这里将学习到的知识总结一下.以下均属个人见解.(有一些是从网络中总结的, ...
- UVA 639 (13.08.25)
Don't Get Rooked In chess, the rook is a piece that can move any number of squaresvertically or ho ...
- TopCoder SRM 625 Incrementing Sequence 题解
本题就是给出一个数k和一个数组,包含N个元素,通过每次添加�数组中的一个数的操作,最后须要得到1 - N的一个序列,不用排序. 能够从暴力法入手,然后优化. 这里利用hash表进行优化,终于得到时间效 ...
- SQL简单的日报和月报
--320, SQL SERVER 日报 --查询2009-01-01当天客户A1,A2,A3的订单数量 SELECT Cust_Name , CONVERT(CHAR(10), Order_Date ...
- 2-13. 平均两个有序序列(25)(ZJU_PAT 名单 | 排列 )
主题链接:http://pat.zju.edu.cn/contests/ds/2-13 已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数.有序序列A0, A1-AN-1的中位 ...
- 怎样通过git协作开发
近期iOS群里的一些小伙伴刚刚毕业,刚參加工作的小伙伴们,对于怎样进行git下的一个写作开发抱有较大的疑惑.今天小汤我就给大家分享个git下协作开发的小技巧. 怎样通过git协作开发? 当两个开发人员 ...
- 服务器编程入门(1)TCP/IP协议族
问题聚焦: 简单地梳理一下TCP/IP各层的功能和常用协议 详细了解ARP(数据链路层)和DNS(应用层)协议的工作原理 1 TCP/IP协议族体系结构 数据链路层: 职责:实现网卡接口的网络 ...
- NYOJ 104 最大子矩阵(二维DP)
最大和 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描写叙述 给定一个由整数组成二维矩阵(r*c),如今须要找出它的一个子矩阵,使得这个子矩阵内的全部元素之和最大,并把这个 ...
- LAMP配置参考地址
http://www.linuxidc.com/Linux/2014-07/104563.htm