-
代码文件头部结构
- 版权和许可声明
- 命名空间(package)
- 外部依赖(import)
-
对象结构
- 类的规范
- 类的声明
- 类的属性和方法
-
类的内部结构
- 类的属性
- 构造方法
- 工厂方法
- 其他方法
-
方法的代码结构
- 方法的规范
- 方法的声明
- 方法的实现
-
限定词的使用 ----限定词推荐使用顺序:
- public/private/protected (访问控制限定词,制定访问权限)
- abstract (抽象类或者抽象方法,具体实现由子类完成)
- static (静态类、方法或者类属性)
- final (定义不能被修改的类、方法或者类属性)
- transient(定义不能被序列化的类属性)
- volatile(定义使用主内存的变量)
- default(声明缺省的方法)
- synchronized(声明同步的方法)
- native(声明本地的方法,也就是 Java 以外的语言实现的方法)
- strictfp(声明使用精确浮点运算)
-
空行的使用
- 版权和许可声明代码块;
- 命名空间代码块;
- 外部依赖代码块
- 类的代码块;
- 类的属性与方法之间;
- 类的方法之间;
- 方法实现的信息块之间。
一个典型的规范,应该包含以下十个部分:
- 方法的简短介绍;
- 方法的详细介绍(可选项);
- 规范的注意事项 (使用 apiNote 标签,可选项);
- 实现方法的要求 (使用 implSpec 标签,可选项);
- 实现的注意事项 (使用 implNote 标签,可选项);
- 方法参数的描述;
- 返回值的描述;
- 抛出异常的描述:需要注意的是,抛出异常的描述部分,不仅要描述检查型异常,还要描述运行时异常;
- 参考接口索引(可选项);
- 创始版本(可选项)。