java进阶(一)------java编程规范---命名约定
2015-11-02 16:21
323 查看
除了部分传统用法的命名例如 sin,cos等,建议在java语言编写的所有程序中使用这些约定。
例子:
com.JavaSoft.jag.Oak
org.npr.pledge.driver
uk.ac.city.rugby.game
仅打算供本地使用的包的名称应该具有以小写祖母开头的第一个标识符,但是第一个不能用java(sun公司保留)。
例子:
ClassLoader
SecurityManager
Thread
例如:
public class HashSet<E> extends AbstractSet<E> {..} //E为容器类型
public class HashMap<K,V> extends AbstractMap<K,V>{...} //K为key,V为value
public class ThreadLocal<T> (...) //T为泛型
ps:不属于以上类型时 不建议使用同名称呼
例如:
getPriority()
setPriority()
良好设计的类极少有public或者protected字段。
final变量也可采用这种命名方式。
例如:
MIN_VALUE
MAX_VALUE
例如:
1.单词的首字母缩写词,如cp,用于保存指向ColoredPoint的引用的变量。
2.简写词,如buf,用于保存指向某种buffer的指针
3.助记词,in和out表示输入 输出,off和len表示偏移量和长度
4.约定单字符名称:
b,用于byte
c,用于char
d,用于double
e,用于Exception
f,用于float
i、j和k,用于整数
l,用于long
o,用于Object
s,用于String
v,用于某种类型的任意值
包的名称
为了使包的名称广泛可用,它的第一个标识符包含两个或三个小写字母,它们指定了一个Internet域,如com、edu、gov、mil、net、org;或者是两个字母的ISO国家代码,如uk或jp。例子:
com.JavaSoft.jag.Oak
org.npr.pledge.driver
uk.ac.city.rugby.game
仅打算供本地使用的包的名称应该具有以小写祖母开头的第一个标识符,但是第一个不能用java(sun公司保留)。
类和接口类型名称
类和接口的名称应该是说明性的名词或者名词短语,名称不要过长,大写每个单词的首字母。例子:
ClassLoader
SecurityManager
Thread
类型变量名称
类型变量名称应该简练(如果可能的话,使用单个字符),并且不应该包括小写字母。例如:
public class HashSet<E> extends AbstractSet<E> {..} //E为容器类型
public class HashMap<K,V> extends AbstractMap<K,V>{...} //K为key,V为value
public class ThreadLocal<T> (...) //T为泛型
ps:不属于以上类型时 不建议使用同名称呼
方法名称
方法名称应该是动词或者动词短语,首字母小写,任何后续单词的首字母大写。例如:
getPriority()
setPriority()
字段名称
不是final的字段名称应该是名词、名词短语或者名词的简写,首字母小写,任何后续单词的首字母大写。良好设计的类极少有public或者protected字段。
常量名称
应该是一个或多个单词、缩写词或简写词的序列,全大写,各个成分之间用下划线“_”字符隔开。final变量也可采用这种命名方式。
例如:
MIN_VALUE
MAX_VALUE
局部变量
局部变量和参数应该比较短,但有意义。它们通常是小写字母的较短序列(而不是单词)。例如:
1.单词的首字母缩写词,如cp,用于保存指向ColoredPoint的引用的变量。
2.简写词,如buf,用于保存指向某种buffer的指针
3.助记词,in和out表示输入 输出,off和len表示偏移量和长度
4.约定单字符名称:
b,用于byte
c,用于char
d,用于double
e,用于Exception
f,用于float
i、j和k,用于整数
l,用于long
o,用于Object
s,用于String
v,用于某种类型的任意值
相关文章推荐
- java进阶(一)------java编程规范---命名约定
- NDK导入Eclipse CDT出现jni.h找不到解决方法
- 【转】java内部类的作用
- java swing桌面程序的布局分析
- 从”JAVA“而终 4:第一个java程序”helloworld“
- (转)在Java中如何遍历Map对象
- java抓取快递100信息接口
- 关于Java的File.separator
- java反射工具类
- JDK所有旧版本在官网中的下载地址
- Eclipse移植项目时JDK版本不匹配Project facet Java version 1.7 is not supported
- Java枚举
- AJax+springMVC+JQURY.GET--注册界面即时刷新用户名是否存在
- 我的JAVA学习之路
- java 布尔值一种赋值方法
- ADT和SDK版本不一致导致的问题
- java的异常机制五个关键字:throw try catch finally throw
- java 自定义异常 简单用法
- myeclipse10 导出war问题解决办法
- GMF学习记录(一) GMF简介