Java编程规约(最全最新)命名规则,约定,文件样式约定,编码其它约定等_第1页
Java编程规约(最全最新)命名规则,约定,文件样式约定,编码其它约定等_第2页
Java编程规约(最全最新)命名规则,约定,文件样式约定,编码其它约定等_第3页
Java编程规约(最全最新)命名规则,约定,文件样式约定,编码其它约定等_第4页
Java编程规约(最全最新)命名规则,约定,文件样式约定,编码其它约定等_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

fd6790145d16799da96136896d771b4a pdf1 3 Java 编程规约 最全最新 命名规则 约定 文件样 式约定 编码其它约定等 目次 JavaJava 编程规约编程规约 1 1 1 1 方针方针 1 1 2 2 文件构成文件构成 1 1 fd6790145d16799da96136896d771b4a pdf2 3 2 1 文件位置 1 3 3 命名规则命名规则 1 1 3 1 Package 名 1 3 2 文件名 1 3 3 类名 2 3 3 1 例外的类名 2 3 3 2 接口名 2 3 3 3 实现类名 2 3 3 4 抽象类名 2 3 3 5 常量类名 常量接口名 2 3 3 6 单体测试类名 3 3 4 常量名 3 3 5 变量名 3 3 5 1 类变量名 接口变量名 3 3 5 2 局部变量名 3 3 6 方法名 4 3 6 1 factory 方法 4 3 6 2 Converter 方法 4 3 6 3 属性的取得方法 4 3 6 4 属性的设定方法 4 3 6 5 返回 boolean 变量的方法 4 3 7 循环变量 Iterator 的命名规则 4 4 4 源文件记录顺序源文件记录顺序 5 5 5 5 记录规则记录规则 5 5 5 1 类定义 5 5 2 缩进 5 5 3 import 句子 6 5 4 换行 6 5 5 数组 7 5 6 变量 8 5 6 1 定义 8 5 6 2 变量的使用 8 5 7 从原型向 string 变换 逆变换 9 5 8 Collection 9 fd6790145d16799da96136896d771b4a pdf3 3 5 9 赋值 9 5 10 控制语句 10 5 10 1 if 句 if else 句 if else if else 句 10 5 10 2 for 句 11 5 10 3 while 句 11 5 10 4 do while 句 11 5 10 5 swhich 句 12 5 10 6 try catch 句 13 5 11 space 14 5 12 说明 15 5 13 Javadoc 的使用方法 15 5 13 1 源程序头部说明 15 5 13 2 类说明 16 5 13 3 字段说明 16 5 13 4 方法说明 16 5 14 格式化 17 6 6 样本代码样本代码 1717 7 7 参考资料参考资料 2020 fd6790145d16799da96136896d771b4a pdf1 20 1 方针方针 本说明书是向开发人员提供 PF 系统里用 Java 来编程的规则和指针 规约的方针是编写易读及易维护的代码 在实际编程时 项目组全体开发人员需严格遵守此规则 2 文件构成文件构成 文件位置文件位置 Java 源文件放入 develope 的 src 下 包中的 换成对应的目录 例 mon package 放入 develop src com mc common 目录 3 命名命名规则规则 Package 名名 特定 package 名的前缀应是通常只用小写字母书写的最高标准的域名 现在是由 com edu gov mil net org 或 ISO 3166 所规定的 2 个文字的字母表来表示的国家编码 前缀的 接续部分是根据编程组织的原本的命名规则来规定 此规则规定目录名为部署 部门 project machine 或注册名 另外 由两个以上词构成的目录名也全部用小写字母来命名 例 mon properties 文件名文件名 用该文件中的 public class 名作为文件名 例 public class Point 所以文件名为 Point java fd6790145d16799da96136896d771b4a pdf2 20 类名类名 类名首字母及各单词的首字母为大写字母 注意 Test 这个单词在类名中不使用 例 CapitalizedWithInternalWordsAlsoCapitalized 例例外外 的的类类名名 例外的类名首字母为大写字母 各单词的首字母为大写字母 Exception 用作为末尾的类名 注意 Test 这个单词在例外的类名中不使用 保留作为 JUnit 的 TestClass 命名用 例 ClassNameEndsWithException 接接口口 名名 接口名首字母为大写字母 各单词的首字母为大写字母 注意 Test 这个单词在接口名中不使用 例 NameOfInterface 另外 要表示添加类里特定功能的接口时 用末尾是 able 的接口名 例 Runnable Clonable Serializable 实实现现类类名名 实现类名是在所实现的接口名末尾添加 Impl 但是 在扩展功能实现类的情况下 根据不同用途 来命名 注意 Test 这个单词在实现类名中部使用 例 接口 ClassNameEndsWith 的实现类 ClassNameEndsWithImpl 接口 RequestHandler 的扩展实现类 SalesRequestHandler 抽抽象象 类类名名 抽象类名从 Abstract 开始 各单词的首字母为大写字母 注意 Test 这个单词在抽象类名中不使用 例 AbstractBeforeSubClassName 常常量量类类名名 常常量量接接口口名名 常量类 常量接口在本系统无特别规定 fd6790145d16799da96136896d771b4a pdf3 20 单单体体测测试试 类类名名 单体测试类名是在测试的类名的末尾添加 test 例 DateUtil 类的测试类名是 DateUtilTest java 测试类的位置 测试类放在与测试对象类相同的目录里 补充 有关测试类和测试对象类分离 可用其他工具 Ant 的 build xml 调整 常量名常量名 常量名全部使用大写字母 单词用 连接 例 UPPER CASE WITH UNDERSCORES 另外 做为半常量 只作参照用 的 Map List 等的 object 名也和常量名一样 变量名变量名 变量名取一个有意思的名字 由 2 个单词以上构成的变量名首字母为小写文字 各单词的首字母 为大写文字 例 employeeStateNumber 类类变变量量名名 接接口口变变量量名名 类变量名 接口变量名以 开始 例 field 局局部部变变量量名名 局部变量名无特别的规定 取一有意思的名字即可 fd6790145d16799da96136896d771b4a pdf4 20 方法名方法名 factory方方法法 所谓 factory 方法是指生成 object 写成 create 例 public Employee createEmployee Converter方方法法 所谓 Converter 方法是指把 object 转换成其他的 object 写成 to 例 public Employee toEmployee 属属性性的的取取得得方方法法 写成 get 例 public Employee getEmployee 属属性性的的设设定定方方法法 写成 set 例 public void setEmployee Employee employee 返返回回boolean变变量量的的方方法法 返回 boolean 变量的方法名在 if while 等的条件句中使用时取一个易分辨 true 是那个意思的名字 boolean isEmpty boolean canGet boolean hasChanged boolean contains Object boolean containsKey Key 循环变量循环变量 Iterator 的命名规则的命名规则 在范围小的循环里面 按顺序使用 i j k 来作为循环变量 fd6790145d16799da96136896d771b4a pdf5 20 4 源文件记录顺序源文件记录顺序 源文件按以下顺序记录 1 源程序头部说明 2 package 句子 3 import 句子 4 类说明 5 类定义 字段 两个以上 字段说明 字段定义 constractor 两个以上 constractor 说明 constractor 定义 方法 两个以上 方法说明 方法定义 注意 例子参照卷末的样品代码 5 记录规则记录规则 类定义类定义 类定义时原则上不用存取修饰词 因为只能在同一 package 中引用 需要从其他 package 引用时写上 public 进行类定义 例 class DataAccesser implements EmployeeColumns 缩进缩进 缩进使用 TAB 不使用 SPACE 不加访问修饰词 fd6790145d16799da96136896d771b4a pdf6 20 import 句子句子 在 import 句子里不使用 要精确到每个具体引用的类 例 不正确的例子 import java util 正确的例子 import java util HashMap import java util ArrayList import java util Map 换行换行 一行最多为 128 个字母 如超过 128 个字母就换行 分割的标准 1 利用局部变量 2 在逗号后换行 3 在优先级低的运算符面前换行 换行分割时用 TAB 缩进 再者 用哪个标准分割 程序编制人员可任意 例 标准 1 double length Math sqrt Math pow Math random 2 0 Math pow Math random 2 0 double xSquared Math pow Math random 2 0 double ySquared Math pow Math random 2 0 double length Math sqrt xSquared ySquared 标准 2 int i calc int a int b int c int d int e int f int i calc int a int b int c int d int e int f 方 针 3 while aaaa bbbb cccc bbbb cccc dddd 同时 类定义 方法定义过长的情况下 在 extends implements throws 节 或逗号之后换行 在分 割时用 TAB 缩进 例 1 public class LongNameClassImplemenation extends AbstractImplementation implements Serializable Cloneable private void longNameInternalIOMethod int a int b throws IOException 例 2 public void longMethodSignature int a int b int c int d int e int f 数组数组 数组的定义写成 Type arrayName 例 不正确的例子 static void main String args 正确的例子 static void main String args fd6790145d16799da96136896d771b4a pdf8 20 变量变量 定定义义 一行里只一个变量定义 例 不正确的例子 int level size 正确的例子 int level int size 变变量量的的使使用用 不重复使用局部变量 定义新的使其初始化 例 不正确的例子 int i for i 0 i N i for i 0 i N i 正确的例子 for int i 0 i N i for int i 0 i N i 使用没有初始化的 i 每次都使用初始化后的 i fd6790145d16799da96136896d771b4a pdf9 20 从原型向从原型向 string 变换 逆变换变换 逆变换 下面举例说明从原型向 string 变换 逆变换 例 从 int 到 String 的变换 逆变换 String s String valueOf i int i Integer parseInt s Collection 不使用 Vector Hashtable Enumeration 使用 collection 类的 List ArrayList Map HashMap Iterator 赋值赋值 如果在两个以上的变量里赋值同样的数值 不写入一行 分两行以上写 例 不正确的例子 fooBar fChar barFoo lchar c 正确的例子 fooBar fChar c barFoo lchar c 同时 不能在赋值运算式里填入其他运算式 例 不正确的例子 d a b c r 正确的例子 a b c d a r fd6790145d16799da96136896d771b4a pdf10 20 控制语句控制语句 if句句 if else句句 if else if else句句 if 句在 后换行 例 if obj null if else 句在 和 后换行 例 if obj null else if else if else 句在 和 后换行 例 if status 0 else if status 1 else 注意 if 句里通常使用 例 不正确的例子 if status 0 System out println call 换行 换行 换行 fd6790145d16799da96136896d771b4a pdf11 20 for句句 for 句在 后换行 例 for int i 0 i max i 无内容的 for 只对初始化 条件 更新部分进行处理 句写成以下形式 例 for int i 0 i max i for 句的初始化和更新部分在使用逗号运算符 时 为使使用的变量不复杂应控制在三个以下 有必要的话可在 for 句前或 for block 后分开后写 例 不正确 的例子 int j 0 int k 0 for int i 0 i 0 providerUrl null if initialContextFactory null if providerUrl null Method comments 80 字符以上换行 不使用 HashTable Constructor comments fd6790145d16799da96136896d771b4a pdf19 20 initialContext new InitialContext env else initialContext new InitialContext 从 JNDI 获得 connection pool DataSource ds DataSource initialContext lookup dataSourceName 从 connection pool 获得 connection return ds getConnection catch SQLException se System err println fail to get connection throw new EJBException se catch NamingExcept

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论