java命名规范法则大全

在我们在刚开始学习java的时候,给包、类、方法等命名的时候总是取名不规范,大多都是随便取的,对于一个专业的程序员来说。命名规范化也是必不可少的。命名规范的话能够在编码过程中实现规范化,为以后的程序开发中养成良好的行为习惯。增加代码的易读性,可读性。

一、包(全部小写)

包名全部小写,但它不同的项目类型:
1.个体项目(indi ): 如:indi.发起者名.项目名.模块名.……

2.个人项目(pers): 如:pers.个人名.项目名.模块名.……

3.私有项目(priv ): 如:priv.个人名.项目名.模块名.……

4.团队项目(team): 如:team.团队名.项目名.模块名.……

5.公司项目( com / cn / net / org / edu): 如下:
包名为“com.公司名.项目名.模块名.……”。

二、类(帕斯卡命名法)

1.Java类名通常以大写字母开头,如果类名称由多个单词组成,则每个单词的首字母均应为大 写例如UserManager;

2.如果类名称中 包含单词缩写,则这个所写词的每个字母均应大写, 例如DOMDemo。

3. 还有一点命名技巧就是由于类是设计用来代表对象的,所以在命名类时应尽量 选择名词,如:Person(名词)Chinese(形容词)

4.POJO类(也就是实体类entity)
命名规范:具有含义的名字,如果有多个单词,每个单词头字母大写。一般和数据库的表照应。
例如:user_info表 则POJO类为UserInfo.

5.接口类
命名规范:业务逻辑接口实现类的命名以POJO名称来制定,并且以大写字母"I"开头,如果有多个单词,每个单词头字母大写
例如:IUserInfo

6.接口实现类
命名规范:业务逻辑接口实现类的命名以POJO名称来制定,将实现的接口名称的首字母"I"去掉,以"Impl作为结尾",如果有多个单词,每个单词头字母大写。
例如:UserInfoImpl

三、方法(驼峰命名)

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

2.使用完整的描述来准确描述方法名,看到方法名就该知道这个方法的功能,例如:getNameByIdFrom表名() 一看就知道是通过id 从数据库中获取name

3. 尽量不去使用连接符 _

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

5.前缀问题
1:类的获取方法(有返回值的方法)的方法名一般加前缀get,如:getName();
2:类的布尔型判断方法一般以is为前缀,如isTrue();
3:类的设置方法加前缀set,如setName();
4:一般方法,使用完整的英文描述说明方法功能,以单词开头,如:openFile();

四、方法参数

1.使用有特定意义的词定义方法参数,如果可能的话使用与被赋值变量相同的名字;
如果参数需要区分和局部变量不重名的情况,则可以考虑加上Param
例如:userNameParam
2.首字母小写,其他单词首字母大写

五、普通变量(驼峰命名+前缀)
1.采用驼峰命名;

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

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

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

5.前缀问题:
1:可以在变量名前加2到3个字母的前缀表示变量的数据类型,例如:strClassName或者classNameStr (以此表示String型)、intStudentAge或者studentAgeInt (表示int型)等等;

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

五、静态变量(全部大写,常加下划线)

1.全部大写,单词间用"_"连接,例如 static int THREAD_FLAG
其他规则参照普通变量的规则2,3,5

六、常量 (全部大写,常加下划线)

1.全部大写,单词间用"_"连接;
2.常量本身要用有意义的单词定义;

七、所有命名规则必须遵循以下规则:

1.名称只能由字母、数字、下划线、$符号组成
2.命名时不能以数字开头
3.在命名是绝对不能出现Java关键字
4.绝对不允许在命名时出现中文
5.尽可能的少用拼音性的命名

软帝学院教你java命名规范法则的更多相关文章

  1. 参与国际化项目需遵循的java命名规范

    笔者最近帮助一些朋友应聘远程工作(一般都是一些国外的项目),国外的项目负责人一般都会要求提供github账号或者一些源代码,很多朋友在这一关就被筛选掉了,其中不乏一些我认为技术非常厉害的行业大牛,他们 ...

  2. Java命名规范基础

    一.java命名规范 1.类和接口:由多个单词组成时,所有单词的首字母大写,如TestJava 2.变量名和方法(函数):由多个单词组成时,所有第一个单词的首字母小写,之后每一个单词的首字母大写,如: ...

  3. java编程规范之java命名规范

    想要成为一个优秀的程序员,首先要培养良好的编程习惯,为了提高代码的可读性,必须有好的命名规范. 这篇文章是小编结合网上的很多资料整理出来的,若有不当或错误的地方,欢迎大家指正 在文章开始前,为方便阅读 ...

  4. Java~命名规范

    下面总结以点java命名规范 虽然感觉这些规范比起C#来说有点怪,但还是应该尊重它的命名! 命名规范 项目名全部小写 包名全部小写 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写. ...

  5. 【JAVA】笔记(1)---JVM内存图;方法重载条件;输入方法;转义字符;强制类型转换;变量分类及区别;Java命名规范;

    Java命名规范: 1.包:全部字母小写: 2.类+接口:所有单词的首字母大写: 3.变量+方法:第一个单词的首字母小写,其余单词首字母大写: 3.常量名:所有字母均大写,且用下划线" _ ...

  6. Java命名规范

    驼峰法则: 将所有字母都小写(包括缩写),然后将单词的第一个字母大写. 每个单词的第一个字母都大写,来得到大驼峰式命名. 除了第一个单词,每个单词的第一个字母都大写,来得到(小)驼峰式命名. 为避免歧 ...

  7. java命名规范和编程技巧

    一个好的java程序首先命名要规范. 命名规范 定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,方便维护等作用 Package 的命名 Package 的名字应该都是由一个小写 ...

  8. Java学习之路(一) —— Java命名规范

    Package 的命名 Package 的名字应该都是由一个小写单词组成. Class 的命名 Class 的名字必须由大写字母开头而其他字母都小写的单词组成 Class 变量的命名 变量的名字必须用 ...

  9. [转] Java 命名规范

    定义规范的目的是为了使项目的代码样式统一,使程序有良好的可读性. 包的命名  (全部小写,由域名定义) Java包的名字都是由小写单词组成.但是由于Java面向对象编程的特性,每一名Java程序员都 ...

随机推荐

  1. 使用echarts绘制条形图和扇形图

    使用echarts绘制条形图和扇形图 简单举例说明下echarts如何绘制条形图和扇形图 代码示例 <!doctype html> <html lang="en" ...

  2. dell服务器在bios中指定raid5的热备盘

    一.创建raid5 二.指定热备盘   选择第15块磁盘作为上面创建的raid5的热备盘 选中 选中我们刚创建的raid5,点击OK

  3. [EXP]CVE-2019-9621 Zimbra<8.8.11 GetShell Exploit(配合Cscan可批量)

    发现时间 2019年03月18日 威胁目标 采用Zimbra邮件系统的企业 主要风险 远程代码执行 攻击入口 localconfig.xml  配置文件 使用漏洞 CVE-2019-9621 受影响应 ...

  4. centos7双网卡绑定

    # 概念 服务器存在多块网卡时,可以通过bond来实现多块网卡并在一起使用: # 模式 mode 0:load balancing (round-robin) Support:需要Switch支持 & ...

  5. Opencv之漫水填充效果

    下面是opencv的漫水填充效果代码 这篇文章仅限个人的笔记 没有详细的注释 放代码 这是简单的示范 int main()//*******************简单的漫水填充算法实例 { Vide ...

  6. c++项目经验分享

    1.C++的const比C语言#define更好的原因? 首先,它能够明确指定类型,有类型检查功能. 其次,可以使用C++的作用域规则将定义限制在特定的函数[常函数]或文件中. 第三,可以将const ...

  7. day49——圆形头像、定位、z-index、js

    day49 今日内容 圆形头像 <!DOCTYPE html> <html lang="en"> <head> <meta charset ...

  8. for循环与if条件语句的复习运用

    鉴于前面学了不少基础了,今天没有学新的内容.boyfriend给我出了几道简单的题目,慢慢的进步中. 1.# 计算1-100之间所有偶数的和 def sum(): sumone = 0 for i i ...

  9. pytest_html报告报错截图+失败重跑

    前言 做web自动化的小伙伴应该都希望在html报告中展示失败后的截图,提升报告的档次,pytest-html也可以生成带截图的报告. conftest.py 1.失败截图可以写到conftest.p ...

  10. Window中C++进行精确计时的方法

    嗯,程序员一个永恒的追求就是性能吧? 为了衡量性能,自然需要计时. 奈何无论C标准库还是C++标准库,因为通用性的考虑,其time API精度都不高.基本都是毫秒级的. 所以如果要真正精确地衡量程序的 ...