JAVA命名规范

驼峰法则:

将所有字母都小写(包括缩写),然后将单词的第一个字母大写。

每个单词的第一个字母都大写,来得到大驼峰命名

除了第一个单词,每个单词的第一个字母都大写,来得到(小)驼峰命名

为避免歧义,文中小驼峰法统称为驼峰法,大驼峰/帕斯卡法统称为大驼峰法则。

1. Package

项目包命名规则:<域名反转>.<团队名>.<项目名>。相关项目可使用<域名反转>.<团队名>.<父项目名>.<子项目名>的命名法则。

命名必须全部使用英文小写字母,禁止使用“下划线”等字符。(除常量外,Java命名习惯中均不推荐使用下划线等字符

示例:

com.cnblogs.niceboat.soyteam.anticorruptionsystem

2. Class/Object、Interface

类和接口使用大驼峰命名

抽象类使用“Abstract”做为类命名的开头

Exception类命名使用“Exception”做为类命名的结尾

Test类使用“Test”做为类命名的结尾

在面向接口编程中,接口的实现类的命名规则为:<接口名>+"Impl"。禁止使用匈牙利命名法。

示例(正确):

接口

实现类

iHandsomeProvider

HandsomeProviderImpl

匈牙利命名法(不推荐):

接口

实现类

IHandsomeProvider

HandsomeProvider

3. Method/Function

方法的命名使用驼峰法,一般使用动词或动词+名词组合。

设置/获取某个值的方法,命名为setV/getV

返回长度的方法,命名为length

判断布尔值的方法,命名为isV

将对象转换为某个特定类型的方法应该命名为toT

示例:

getSecretStage()
length()
isEmpty()
toSpecialFormat()

4. Variable

变量的命名使用驼峰法

示例:

OpenId

常量命名使用大写字母并用下划线分割

示例:

MAX_SUITABLE_SIZE

关于驼峰法则的具体命名规范(尤其是涉及到单词缩写),参见此表:

原文 驼峰法则 大驼峰法则 不推荐
XML HTTP request xmlHttpRequest XmlHttpRequest XMLHTTPRequest
new customer ID newCustomerId NewCustomerId newCustomerID
inner stopwatch innerStopwatch InnerStopwatch innerStopWatch
support IPv6 on iOS supportIpv6OnIos SupportIpv6OnIos supportIPv6OniOS
Anglo-Saxon England angloSaxonEngland AngloSaxonEngland Anglo-SaxonEngland

[规则原则定理]规则原则定理章3Java命名规范的更多相关文章

  1. 第四章 android 命名规范和编码规范

    书里面讲的比较常见,单个人也是有不同的观点: 因为android绝大部分使用java开发的,因此java相关规范适用于android: Google Style: 英文地址:http://google ...

  2. JAVA之旅(九)——Object类,equals,toString,getClass,内部类访问规则,静态内部类,内部类原则,匿名内部类

    JAVA之旅(九)--Object类,equals,toString,getClass,内部类访问规则,静态内部类,内部类原则,匿名内部类 天天被一些琐事骚扰,学习还得继续 一.Object类 Obj ...

  3. 《Drools7.0.0.Final规则引擎教程》第3章 3.1 Hello World 实例

    3.1 Hello World 实例 在上一章中介绍了Drools5x版本中规则引擎使用的实例,很明显在Drools7中KnowledgeBase类已经标注为"@Deprecated&quo ...

  4. 【java规则引擎】《Drools7.0.0.Final规则引擎教程》第4章 4.2 ruleflow-group&salience

    转载至:https://blog.csdn.net/wo541075754/article/details/75299888 ruleflow-group 在使用规则流的时候要用到ruleflow-g ...

  5. 【java规则引擎】《Drools7.0.0.Final规则引擎教程》第4章 4.2 lock-on-active

    转载至:https://blog.csdn.net/wo541075754/article/details/75208955 lock-on-active 当在规则上使用ruleflow-group属 ...

  6. 【java规则引擎】《Drools7.0.0.Final规则引擎教程》第4章 4.1 规则文件

    转载至:https://blog.csdn.net/wo541075754/article/details/75150267 一个标准的规则文件的格式为已“.drl”结尾的文本文件,因此可以通过记事本 ...

  7. 《Drools7.0.0.Final规则引擎教程》第4章 4.2 ruleflow-group&salience

    ruleflow-group 在使用规则流的时候要用到ruleflow-group属性,该属性的值为一个字符串,作用是将规则划分为一个个的组,然后在规则流当中通过使用ruleflow-group属性的 ...

  8. 《Drools7.0.0.Final规则引擎教程》第4章 4.2 lock-on-active

    lock-on-active 当在规则上使用ruleflow-group属性或agenda-group属性的时候,将lock-on-active 属性的值设置为true,可避免因某些Fact对象被修改 ...

  9. 《Drools7.0.0.Final规则引擎教程》第4章 4.1 规则文件

    一个标准的规则文件的格式为已".drl"结尾的文本文件,因此可以通过记事本工具进行编辑.规则放置于规则文件当中,一个规则文件可以放置多条规则.在规则文件当中也可以存放用户自定义的函 ...

随机推荐

  1. 魅族手机USB调试无法打开、log无法打印

    MEIZU 在打开usb调试允许时,总提示:because an app is oobscuring a premision request, Setting can't verify your re ...

  2. Feign Hystrix

    1.Feign整合Hystrix 添加依赖 编写接口与实现回退 1.1.调用者引入依赖 <!-- Feign --> <dependency> <groupId>o ...

  3. Java中this和super的用法和区别

    super(参数):调用父类中的某一个构造函数(应该为构造函数中的第一条语句). this(参数):调用本类中另一种形式的构造函数(应该为构造函数中的第一条语句). this的实例: package ...

  4. GraphicsTier

    [GraphicsTier] 1.enum GraphicsTier 2.enum ShaderQuality 3.enum BuildTargetGroup 4.EditorGraphicsSett ...

  5. c#批量更新list对象sql

    注意: 1.语句中"set "后有空格, 2.最后一个if一定有值,且接连的sql字段 无  逗号 3.parameterList.Clear(); /// <summary ...

  6. cacti报ERROR: unknown option '--border' 解决方法

    cacti制图报下面提示 if (isset($rrdborder) && $rrdversion >= 1.4) { $graph_opts .= "--border ...

  7. php苹果内购订单验证

    /** * 21000 App Store不能读取你提供的JSON对象 * 21002 receipt-data域的数据有问题 * 21003 receipt无法通过验证 * 21004 提供的sha ...

  8. bulk

    bulk - 必应词典 美[bʌlk]英[bʌlk] n.大部分:主体:(大)体积:大(量) v.扩展:增大:堆积起来:形成大块 网络散装:大批:大量 变形复数:bulks:现在分词:bulking: ...

  9. 服务器使用VMware系软件管理主机集群

    在服务器安装ESXI 6.0系统,此系统300多M,用于管理服务器上的主机. 其他主机安装个vsphere client连接后可ESXI系统可进行简单管理 如果要更强大的功能,需要安装vcenter ...

  10. EasyUI Dialog 对话框 关闭事件

    在  $('#×××').dialog('close');  执行后触发 $(function(){ $("#titledialos").dialog({ onClose: fun ...