好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

应用组Java编码规范.doc

17页
  • 卖家[上传人]:桔****
  • 文档编号:556043447
  • 上传时间:2022-12-08
  • 文档格式:DOC
  • 文档大小:78.50KB
  • / 17 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 无锡中科方德应用组Java编码规范(版本 1.0)无锡中科方德软件有限公司2007-8-31版本变更说明版本完稿时间撰写人说明1.02007-8-31吴德有、郗嘉初稿2007-9-3吴德有修改2007-10-18靳健补充实例目 录 / 文档可自由编辑打印1 概述 41.1 编写目的 41.2 预期读者 41.3 适用范围 42 命名规范 52.1 包命名规则 52.1.1 与业务系统相关的包命名 52.1.2 与业务系统无关的、可公用的包 52.2 类名、接口命名规则 52.3 方法命名规则 62.4 变量命名规则 62.5 常量命名规则 73 代码书写规范 83.1 返回值 83.2 异常 83.3 表达式 93.4 体前代码 93.5 注释 104 代码规范举例 111 概述1.1 编写目的本文描述了应用组基于JAVA开发中的有关包、类、接口、方法、实例变量、变量和常量的命名规则,用于规范各个项目组的有关JAVA编程过程中的命名和代码书写规范1.2 预期读者应用组全体成员1.3 适用范围适用于应用组所有基于JAVA开发的项目2 命名规范2.1 包命名规则应用组将基于JAVA开发中产生的包分为两类,一是与各业务系统相关的包,一是与业务系统无关的、可公用的包。

      它们的命名规则除要遵守“包名应全部是小写字母,包名中不能出现下划线,并且第一个字母不能是数字”的规则2.1.1 与业务系统相关的包命名与业务系统相关的包命名格式为:com.nfschina..其中: 为项目英文简称或缩写;为模块英文名称或简称2.1.2 与业务系统无关的、可公用的包成熟框架方面的包命名格式为:com.nfschina.framework.工具方面的包命名格式为:com. nfschina.util.2.2 类名、接口命名规则类和接口的名称应是一个名词,采用大小写混和的方式,所有单词都应紧靠在一起,其中每个单词的首字母应大写例如: class Person;class ImageSprite;每个类定义要前必须加类的说明2.3 方法命名规则方法名应是一个动词,采用大小写混和的方式,其中第一个单词的首字母用小写,其后单词的首字母大写例如:Xxxxx.getBackgorund();每个方法前必须加说明包括:参数说明、返回值说明、异常说明。

      如果方法名实在是太长可以对变量名缩写,但是必须添加相应的说明2.4 变量命名规则变量命名一般采用大小写混和的方式,第一个单词的首字母小写,其后单词的首字母大写,变量名一般不要用下划线或美元符号开头变量名应简短且有意义,即,能够指出其用途除非是一次性的临时变量,应尽量避免单个字符的变量名1)类的实例对象定义如下:Person person;(2)同一个类的多个对象可以采用一下定义方式:Person person_1;Person person_2;(3)集合类的实例命名使用集合包含元素的英文名称的复数表示,例如:Vector persons;(4)如果变量名实在是太长可以对变量名缩写,但是必须在类说明或方法说明部分(视缩写的范围而定)进行说明5)数组的声明要用"int[] packets"的形式,而不要用"int packets[]"2.5 常量命名规则类常量和ANSI常量的命名应全部用大写,单词间用下划线隔开例如:final static int MIN_WIDTH = 4;final static int MAX_WIDTH = 99;3 代码书写规范类的方法的代码行数不能过长,尽量控制在100行(90%),长的方法要拆分成私有函数。

      3.1 返回值在一般情况下,方法返回值不应返回null而是尽量使用异常代替返回null如果在特殊情况必须返回null, 必须在方法说明中加以特别说明,如使用“特别注意”等字样例如:从一个集合类实例中提取一个对象,因为有些集合类实例是允许null作为键或值的,这个时候用异常取代返回null就不合适了如果方法的返回值是集合类对象,而且返回的集合对象不包含任何元素时,则应返回0长度或0大小的集合对象不能返回null3.2 异常整个应用系统使用自行设计的唯一异常类,该类包括message(表示错误信息)和ID号(整型,表示异常类型)两部分,该类在创建时是自动获得类名、方法名、行号等信息在系统开发和上线之后的一段时间内,异常信息要直接发送到浏览器页面,以便于开发人员迅速定位错误3.3 表达式1) 所有的算术、逻辑表达式的每一项运算都需要加圆括号,避免使用java语言的运算符优先级,例如:(2 *(x + y))/(1 - x);((n > 1)?(n - 1):(n = 1))result =(result && (lastOperand > nextOperand));2) 二元算术运算符(除去“/”)、二元逻辑元素符、赋值运算符,既“+、-、*、%、+=、-=、*=、/=、%=、>、<、 ==、 >=、<=、 =”等符号左右两边要加空格,例如:if(lastOperand >= lastOperand)3) 参数说明部分的逗号“,”和for语句循环说明部分的分号“;”之前不需要留空格,之后需要留空格。

      如:Calculator.add(int a, int b);for(int i = 0; i < 100; i ++);3.4 体前代码体前代码包括:a) 方法的参数说明和异常说明;b) 条件语句,如if语句、switch语句;c) 循环语句,如while语句、for语句这些语句的参数说明、条件说明和循环控制都放在圆括号内如果不是特别长,应尽量放在同一行内同时注意,参数说明、条件说明和循环控制的结束圆括号“)”与体开始花括号“{”之间留一个空格3.5 注释注释是软件可读性的具体体现程序注释量一般占程序编码量的20%,软件工程要求不少于20%以下是四种必要的注释:(1) 类说明注释注释一般位于 package/import 语句之前,class 描述之前要求至少写出内容说明、创建者、创建时间和特别注意事项等内容例如:/*** Script Name : CmsPersistencer* Description : Content Management System Data Access Layer* Type : Java* Last Modified : 2007-10-17 16:58:00** @since 2007/09/12* @author jinjian*/(2) 方法说明注释对几乎每个方法都应有适当的说明,位于方法声明之前,包括:说明,参数说明、异常说明、返回值说明和特别说明等。

      例如:/*** Insert a Menuitem entity** @param connection* the specific database connection* @param menuItem* the menuitem to be inserted* @return the inserted menuItem id* @throws NfschinaException* when it occurs a SQLException*/(3) 体内代码的注释体(方法体、代码块体、静态代码块体等)内的代码按照功能分成多个虚拟的功能块,每个块以块注释“/* xxx */”注释开始,以空行结束;例如: /* articleTitle */ if (nameLike != null) { where += ((where.length() == 0) ? " WHERE " : " AND ") + "articleTitle LIKE \'" + nameLike + "\'"; } /* creator */ if (creatorLike != null) { where += ((where.length() == 0) ? " WHERE " : " AND ") + "creator LIKE \'" + creatorLike + "\'"; }(4) 行注释行注释“//”仅用于调试注释,在程序稳定之后,行注释必须被删除,以免影响程序的可读性。

      4 代码规范举例package com.nfschina.cms.controller;/** * Script Name : CmsPersistencer * Description : Content Management System Data Access Layer * Type : Java * Last Modified : 2007-9-15 16:58:00 * * @since 2007/09/12 * @author jinjian */import java.io.IOException;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Timestamp;import java.util.ArrayList;import java.util.Date;import java.util.Vector;import com.nfschina.cms.model.Article;import com.nfschina.cms.model.ArticleCategory;import com.nfschina.cms.model.ArticleSchema;import com.nfschina.cms.model.ArticleStyle;import com.nfschina.cms.model.Document;import com.nfschina.cms.model.Image;import com.nfschina.cms.model.Menuitem;import com.nfschina.utils.NfschinaException;import com.nfschina.utils.Tools;public class CmsPersistencer { ...... /* ======================================================。

      点击阅读更多内容
      相关文档
      2025国开山东开大《土质学与土力学》形成性考核123答案+终结性考核答案.docx 中学综合素质知识点梳理【中学教师资格证】.docx 2025国开山东开大《特许经营概论》形成性考核123答案+终结性考核答案.doc 2025年高考英语全国一卷真题(含答案).docx 2025国开山东《农民专业合作社创建与管理》形成性考核123答案+终结性考核答案.docx 2025国开山东开大《自然现象探秘》形成性考核123答案+终结性考核答案.docx 2025国开山东《消费心理学》形成性考核123答案+终结性考核答案.doc 2025国开山东《小微企业管理》形成性考核123答案+终结性考核答案.doc 2025国开山东开大《资本经营》形成性考核123答案+终结性考试答案.docx 2025国开山东《小学生心理健康教育》形考123答案+终结性考试答案.docx 2025国开《视频策划与制作》形考任务1-4答案.docx 2025国开《亲子关系与亲子沟通》形考任务234答案+期末大作业答案.docx 2025国开电大《煤矿地质》形成性考核123答案.docx 2025国开电大《冶金原理》形考任务1234答案.docx 2025国开《在线学习项目运营与管理》形考任务1234答案.doc 2025国开电大《在线教育的理论与实践》阶段测验1-4答案.docx 2024 年注册环保工程师《专业基础考试》真题及答案解析【完整版】.docx 环保工程师---2023 年注册环保工程师《专业基础考试》真题及答案解析【完整版】.docx 2025国开《液压与气压传动》形考任务一参考答案.docx 2025年春江苏开放大学教育研究方法060616计分:形成性作业2、3答案.docx
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.