1. 说明
1.1 为什么要有编码规范
编码规范对于程序员而言尤为重要,有以下几个原因:
◆ 一个软件的生命周期中,80%的花费在于维护。
◆ 几乎没有任何一个软件,在其整个生命同期中,均由最初
的开发人员来维护。
◆ 编码规范可以改善软件的可读性,可以让程序员尽快而彻
底地理解新代码。
◆ 如果你将源码作为产品发布,就需要确认它是否被很好的
打包并且清晰无误,一如你已构建的其它任何产品。
为了执行规范,每个软件开发人员必须一致遵守编码规范。
每个人!!!
1.2 版权声明
本文档反映的是 Sun Microsystem 公司,Java 语言规范中的编
码 标 准 部 分 。 主 要 贡 献 者 包 括 : Peter King , Patrick
Naughton , Mike DeMoney ,Jonni Kanerva , Kathy Walrath 以 及
Scott Hommel。本文档现由 Scott Hommel 维护,有关评论请发至
shommel@eng.sun.com。
2. 文件名(File Names)
这部分列出了常用的文件名及其后缀。
2.1 文件后缀(File Suffixes)
Java 程序使用下列文件后缀:
文件类别 文件后缀
Java 源文件
.java
Java 字节码文件
.class
2.2 常用文件名(Common File Names)
常用的文件名包括:
文件名 用途
GNUmakefile
makefiles 的 首 选 文 件 名 。 我 们 采 用
gnumake 来创建(build)软件。
README
概述特定目录下所含内容的文件的首选
文件名。
3. 文件组织(File Orgnization)
一个文件由被空行分割而成的段落以及标识每个段落的可选
注释共同组成。超过 2000 行的程序难以阅读,应该尽量避免。
“Java 源文件范例”提供了一个页面布局合理的 Java 程序范例。
3.1 Java 源文件(Java Source Files)
每个 Java 源文件都包含一个单一的公共类或接口。若私有类
和接口与一个公共类相关联。可以将它们和公共类放入同个源文
件。公共类必须是这个文件中的第一个类和接口。
Java 源文件还遵循以下规则:
◆ 开头注释(参见“开头注释”)
◆ 包和引入语句(参见“包和引入语句)
◆ 类和接口声明(参见“类和接口声明)
3.1.1 开头注释(Beginning Comments)
所有的源文件都应该在开头有一个 C 语言风格的注释,其中
列出数出类名、版本信息,日期和版权声明:
/ *
* Classname
*
* Version information
*
* Date
*
* Copyright notice
* /
3.1.2 包和引入(Package and Import Statements)
在多数 Java 源文件中,第一个非注释行是包语句行。在它之
后可以跟引入语句。例如:
package java.awt;
import java.awt.peer.CanvasPeer;
3.1.3 类和接口声明(Class and Interface Declarations)
下表描述了类和接口声明的免修部分以及它们出现的先后次
序。参见“Java 源文件范例”中一个包含注释的例子。
类/接口声明的各部分 注解
1
类/接口文档注释
(/ **…* /)
该注释中所包含的信息,参见“文
档注释”
2
类/接口的声明
3
类/接口实现的注释
(/ *…* /)
如果有必要的话
该注释应包含任何有关整个类或
接口的信息,而这些信息又适合
作为类/接口文档注释。
4
类的(静态)变量 首先是类的 public 变量,随后是
protected 变量,再后是包一级别
的变量(没有访问修饰符),最后是
private 变量。
5
实例变量 首 先 是 public 变 量 , 随 后 是
protected 变量,再后是包一级别
的变量(没有访问修饰符),最后是
private 变量。
6
构造器
7
方法 这些方法应该按功能,而非作用
域或访问权限,分组。
4. 缩进排版(Indentation)
4 个空格常被作为缩进排版的一个单位。缩进的确切解释并未
详细指定(空格 vs.制表符)。一个制表符等于 8 个空格(而非 4 个)。
4.1 行长度
尽量避免一行长度超过 80 个字符,因为很多终端和工具不能
很好处理之。注意:用于文档是的例子应该使用更短的行长,长