“Java命名要求”
前言
很多Android开发者应该都有过看别人代码时完全看不懂的绝望的经历,当然Zicon也有过这样的经历(也给过别人这样的感受)。
而且我们经常提到的代码的优化不仅仅是要求代码里面尽可能没有bug,更要求代码的整洁,要让别人看得懂。
因此今天Zicon就献丑整理一下对于Java的一些命名规范吧。
正文
禁止项
- 命名中不能以下划线、数字或美元符号开始,也不能以下划线或美元符号结束。
反例:_name;Object$;
- 命名不得采用拼音与英文混合的方式,不得直接使用中文。PS:国际通用的名称除外,如taobao,youku,hangzhou等。
反例:Dazhe [打折] ,ShuXue [数学];
- 不得使用不规范的缩写,避免语义表达不准确。
反例:AbstractClass缩写为AbsClass;
- 命名不能使用Java中的关键字。
常规项
- 在提出命名的常规标准之前,容许我简单的介绍一个重要的命名法:驼峰命名法。
小驼峰法:在命名中出现的多个单词,首单词的首字母小写,其余单词首字母均大写。
大驼峰法:在命名中出现的多个单词,全部单词的首字母大写。
-
命名时尽量选择有意义的名词,更好表达该对象的含义。
-
常量应按其功能分开存放在不同的类中,便于维护和阅读。如:缓存相关常量放在类CacheConsts中。
包的命名:包名全部小写
例如:net.java.javagroup
类的命名:大驼峰法
例如:ExampleCalss PS:当包含单词缩写则缩写词首字母大写,其余小写,如:XmlService而不是XMLService
抽象类的命名:使用Abstract或Base开头
异常类的命名:使用Exception结尾
测试类的命名:以要测试的类的名称开头,以Test结尾
变量、方法的命名:小驼峰法
例如: maxNumber;drawImage();
常量的命名:全部大写,每个单词间加下划线,力求语义表达完整,不要嫌弃名字长
例如: MAX_BOOK_COUNT就比MAX_COUNT好
参数的命名:小驼峰法
PS:参数命名与方式类似,为免阅读程序时造成迷惑,尽量保证参数名称为一个单词的情况下使参数命名尽可能准确。
后记
身为程序员,我认为保证自己代码的整洁度、可阅读性是一件很重要的事情。