类的名字必须由大写字母开头而单词中的其他字母均为小写;如果类名称由多个单词组成,则每个单词的首字母均应为大写例如TestPage;如果类名称中包含单词缩写,则这个所写词的每个字母均应大写,如:XMLExample,还有一点命名技巧就是由于类是设计用来代表对象的,所以在命名类时应尽量选择名词。
People TestPage XMLExample
方法名
方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头。可以为动词或动词+名词组合。
设置/获取某个值的Method,应该遵循setV/getV规范
返回长度的Method,应该命名为length
测试某个布尔值的Method,应该命名为isV
将对象转换为某个特定类型的Mehod应该命名为toF
getDate(); length(); isReady(); toOracleFormat();
变量名
1.普通变量命名应该采用首字母小写,其他字母首字母大写的方式。
2.final static变量的名字应该都大写,并且指出完整含义。如果一个常量名称由多个单词组成,则应该用下划线来分割这些单词如。
NUM_DAYS_IN_WEEK MAX_VALU
3. 如果需要对变量名进行缩写时,一定要注意整个代码中缩写规则的一致性
context=ctx message=msg
4. 通过在结尾处放置一个量词,就可创建更加统一的变量
First(一组变量中的第一个) Last(一组变量中的最后一个) Next(一组变量中的下一个变量) Prev(一组变量中的上一个) Cur(一组变量中的当前变量)
5. 无论什么时候,均提倡应用常量取代数字、固定字符串。也就是说,程序中除0,1以外,尽量不应该出现其他数字。
6. 索引变量:i、j、k等只作为小型循环的循环索引变量。
7. 逻辑变量:避免用flag来命名状态变量,用is来命名逻辑变量。
if(isClosed){ dosomeworks; return; }
数组
总是使用以下方式定义数组:
int[] arr = new int[10];
禁止使用C语言的是形式:
禁止 int arr[] = new int[10];
集合
数组或者容器推荐命名方式为名词+s的方式,例如:
List persons = getPerson(); for(Person person : persons){ dosomeworks; }
泛型
应该尽量简明扼要(最好是一个字母),以利于与普通的class或interface区分
Container中的Element应该用E表示;Map里的key用K表示,value用V;Type用T表示;异常用X表示
如果需要接收多个Type类型的参数,应该用邻接T的大写字母——例如S——来依次表示,当然也可以用T1, T2这样的方式
public class HashSet extends AbstractSet {…} public class HashMap extends AbstractMap {…} public class ThreadLocal {…} public interface Functor { T val() throws X; }
推荐的命名
1.当要区别接口和实现类的时候,可以在类的后面加上“Impl”。
interface Container class ContainerImpl
2.Exception类最好能用“Exception”做为类命名的结尾
DataNotFoundException InvalidArgumentException
3.抽象类最好能用“Abstract”做为类命名的开头
AbstractBeanDefinition AbstractBeanFactory
4. Test类最好能用“Test”做为类命名的结尾
ContainerTest