### Java程序的代码规范 #### 1. 命名规范 **1.1 package(*)** - 包名应全部由小写的ASCII字母组成,并用“.”进行分隔。 - 在此项目中,所有包均以“com.prosten.ticket”开头。 **1.2 class(*)** - 类名应为名词,每个内部单词的首字母大写。 - 应当确保类名简洁且具有描述性,使用完整的英语单词或约定俗成的缩写来命名类名。 - 示例:`public class UserManager` **1.3 interface(*)** - 接口名同样应为名词,每个内部单词的首字母大写。 - 接口名需简洁且具有描述性,使用完整的英语单词或约定俗成的缩写。 - 示例:`interface TicketManagement` **1.4 Class成员属性及变量的命名(*)** - 变量名全部由字母组成,首字母小写,之后每个内部单词的首字母大写。 - 变量名应简短而有意义,易于记忆。 - 避免使用单个字符作为变量名,除非是作为临时变量。 - 示例:`private String lastName;` - 临时变量命名规则:i、j、k、m、n用于整数;c、d、e用于字符。 **1.5 常量的命名(*)** - Java中的常量(被static final修饰)应用全大写字母加下划线命名,并尽可能表达完整含义。 - 示例:`static final String SMTH_BBS = "bbs.tsinghua.edu.cn";` **1.6 数组的命名(*)** - 数组应遵循与普通变量相同的命名规则,即首字母小写,其余每个内部单词首字母大写。 - 示例:`int[] numbersArray;` #### 2. Java源文件样式 **2.1 Class代码布局** - 源文件的布局应清晰,包括必要的头部信息如版权声明、包声明等。 - 每个类应有清晰的结构,包括字段、方法等部分。 **2.2 版权声明** - 每个源文件顶部应包含版权声明,表明作者信息和版权归属。 **2.3 Package/Imports(*)** - 源文件的最开始应是`package`声明。 - 接下来是必要的`import`语句,以便引入其他包中的类或接口。 **2.4 Javadoc注释** - 使用Javadoc注释为类、方法、字段提供详细的文档说明。 - Javadoc注释应包含@see、@param、@return等标签,以提供更丰富的信息。 **2.5 ClassFields** - 类字段应按照一定的顺序排列,如静态字段、实例字段、枚举类型等。 **2.6 存取方法(getter,setter)** - 为每个私有字段提供getter和setter方法。 - getter和setter方法应符合命名规范,如`getLastName()`、`setLastName(String lastName)`。 **2.7 构造方法(*)** - 每个类至少有一个构造方法。 - 构造方法可以是默认的无参构造器,也可以是带参数的构造器,用于初始化对象状态。 **2.8 克隆方法** - 如果类需要支持克隆功能,则应实现`Cloneable`接口并重写`clone()`方法。 **2.9 类方法** - 类方法(静态方法)应按一定逻辑顺序排列,并添加适当的Javadoc注释。 **2.10 toString方法** - 实现`toString()`方法,以便于调试和展示对象的状态。 - `toString()`方法应返回一个描述对象状态的字符串。 **2.11 main方法(*)** - 每个可执行的Java类应包含一个`main`方法。 - `main`方法应为`public static void main(String[] args)`。 #### 3. 代码编写风格 **3.1 语句** - **3.1.1 简单语句** - 简单语句应在一行内完成。 - **3.1.2 复合语句** - 复合语句应使用花括号`{}`包围。 - **3.1.3 返回语句** - 返回语句应简洁明了,尽量在一行内完成。 **3.2 位置控制** - **3.2.1 缩进** - 每个逻辑层次缩进四个空格。 - **3.2.2 行的长度** - 每行代码不宜超过80个字符。 - **3.2.3 折叠的行** - 若一行代码过长,应将其拆分为多行。 **3.3 空白处理** - **3.3.1 空行** - 每个类、方法之间使用一个空行进行分隔。 - **3.3.2 空格** - 在操作符两侧使用空格。 **3.4 声明** - **3.4.1 每行一个** - 每行只声明一个变量。 - **3.4.2 初始化** - 尽可能在声明变量时对其进行初始化。 - **3.4.3 位置** - 变量应在使用之前声明。 #### 4. 程序编写规范 **4.1 使用方法来访问实例变量和类变量(*)** - 通过方法访问类变量和实例变量以提高封装性。 **4.2 引用类变量和类方法(*)** - 类变量和类方法应在类内部引用,以保持一致性。 **4.3 常量(*)** - 常量应使用`static final`修饰,并采用全大写字母和下划线命名。 **4.4 ?前的逻辑运算表达式** - 在条件表达式中使用逻辑运算符时,应考虑其优先级。 **4.5 变量赋值** - 明确指定变量赋值,避免使用模糊不清的表达式。 **4.6 特殊注释** - 对于特殊的编程技巧或不易理解的代码片段,应添加特殊注释。 **4.7 例外** - 对于异常情况,应明确处理或抛出异常。 **4.8 方法的输入参数** - 方法的参数列表应简洁,必要时添加注释说明。 **4.9 方法的返回值** - 方法的返回值应清晰,对于复杂的返回类型,考虑使用自定义的数据类型。 #### 5. Struts编码规范 **5.1 Action和ActionForm的class命名** - Action类命名应以“Action”结尾。 - ActionForm类命名应以“Form”结尾。 **5.2 ActionForm变量命名** - ActionForm中的变量命名应遵循Java Bean的命名规范。 **5.3 Action内部结构** - Action类应包括执行逻辑、错误处理和数据验证等。 **5.4 在ActionForm和数据对象之间复制数据** - 使用`BeanUtils`工具类复制数据。 **5.5 Struts标记库的使用** - 使用Struts提供的标记库来简化页面开发。 #### 6. 注释 **6.1 注释格式** - **6.1.1 javadoc风格的注释** - 使用`/** ... */`格式,为类、方法、字段等提供文档。 - **6.1.2 程序内部说明性注释** - 使用`//`或`/* ... */`为特定代码段提供说明。 **6.2 注释内容** - **6.2.1 类或接口的注释** - 描述类或接口的功能和用途。 - **6.2.2 类方法的注释** - 描述方法的作用、输入参数和返回值。 - **6.2.3 类变量的注释** - 描述变量的用途。 - **6.2.4 类常量的注释** - 描述常量的含义。 #### 7. 编程实践问题 **7.1 exit()** - 应避免使用`System.exit(0)`退出程序,除非是特殊情况。 **7.2 垃圾收集** - 理解Java的垃圾回收机制,合理管理对象的生命周期。 **7.3 final类** - 考虑使用`final`关键字声明不可继承的类。 **7.4 性能** - 关注程序的性能优化,减少不必要的内存消耗。 **7.5 使用StringBuffer对象** - 在需要频繁修改字符串的情况下,使用`StringBuffer`代替`String`以提高性能。 **7.6 换行** - 每个源文件的最后一行不应有多余的空行。 #### 结论 本文详细介绍了Java程序的代码规范,包括命名规范、源文件样式、代码编写风格、程序编写规范、Struts编码规范以及注释等方面。这些规范有助于开发者编写高质量、易维护的代码,并有助于团队协作。通过遵循这些规范,可以提高代码的可读性和可维护性,减少bug的出现,从而提高项目的整体质量。























剩余21页未读,继续阅读


- 粉丝: 40
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源


