教程教案java编码_第1页
教程教案java编码_第2页
教程教案java编码_第3页
教程教案java编码_第4页
教程教案java编码_第5页
已阅读5页,还剩27页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

目前 适用范 命名规 Package CLASS CLASS成员 StaticFinal变量 前变量名 参数 数组 方法的参 缩 除局部循环变量外变量名取单个字 不用数字定义名 用正确的反义词组命 避免使 样 信 CLASS的样 Class的定 Class 构造函 克隆方 类成员变量和方法的编写顺 main方 代码样 注 一般情况 书写格式规 缩 页 空 空格的使 {}的用 if等语句写 循环、判断等语 参数划 一行只写一条语 公共变 局部变 异 收 final 类的成员变 编程技 一般性原 检查所有参数输入的有效性 检查参数输 类名应准确描述类的功能 避免强制返回值类 让调用点显得易懂、容易理解 减少数据类型转 防止程序中的代码 减少递归调用 使用数据流 避免使用BOOL参数 byte数组转换到 Utility 初始化数 枚举类 Z-Order问 不必要的对象构 synchronized关键 程序效 注意代码的效 提高代码效 局部效率应为全局效率服 循环体内工作量最小化 仔细分析有关算法,并进行优化 改进输入方 提高调用不频繁的代码效率要慎 提高空间效 循环的位 尽量减少循环嵌套层次 避免循环体内含判断语 不要一味追求紧凑的代码 性 可移植 换 可测 调 调测信息串格 在编程中注意单元测 测试准 测试................................................调测开 调试与测 调测开关的级别和类 编写防错程 质量保 一致性检 SWITCH语句必须有DEFAULT分支 代码编辑、编译、..................................................................................................... QA代码..................................................................................................................软件系 前适用范码、测试及过程中,要求严格遵守。命名规读性,减少项目组中因为而带来的损失。PackagePackageClassClass的名字每个单词必须由大写字母开头而其他字母都小写的单词组成。Class成员示例:functionName、countNum、sizeStaticFinal变量StaticFinal常量:大写单词组成,单词之间使用“_”连接示例:MAX_INDEX前变量名前台变量fg_变量名变量bg_参数参数的名字必须和变量名规范一致数组byte[]buffer;bytebuffer[];setCounter(int{this.size=}temp可缩写为tmp message可缩写为 对于变量命名,取单个字符(如i、j、k...,建议除了要有具体含义外,还能表明其变量类型、数据类型等,但i、j、k作局部循环变量是允许说明:变量,尤其是局部变量,如果用单个字符表示,很容易敲错(ijvoidset_sls00(BYTEslsvoidsetUdtMsgSls(BYTEsls用正确的反义词组命名具有互斥意义的变量或相作的函数等。add/begin/create/insert/first/get/increment/put/add/lock/open/min/old/start/next/source/show/send/source/cut/up/ addUser(BYTE*userName); deleteUser(BYTE*userName);样JavaJava(*.java)信息必须在javapackage行要在import行之前,import中标准的包名要在本地的包名之前,而且按照字母顺序排列。如果import行中包含了同一个包中的不同子,则建议用*来处理。packagecom.test;importjava.io.*;importimportjava.io.*使用来代替InputStreamandOutputStreamClassClassextendsimplementspublicclassCounterSetextendsObservableimplementsClass*Packetprotectedint[](JavaDocproceted、privatepackage定义的成员变量如果名字含义明确的话,可构造函数,它应该用递增的方式写(比如:参数多的写在后面publicCounterSet(int{this.size=}publicCounterSet(intsize,String{this.size=size;=name;}publicObject{{}

CounterSetobj=(CounterSet)super.clone();obj.packets=(int[])packets.clone();obj.size=size;returnobj;catch(CloneNotSupportedException{thrownewInternalError("UnexpectedCloneNotSUpportedException:"+e.getMessage());}} main如果main(String[])方法已经定义了,unixwindows的(比如:回车变成回车+换注20/**…*/使用HTML的语句,但要杜绝使用“HL“HR”。注释全部采用@since@deprecated文字:可增加一条注释,指定特定的类、方法或变量不应继续使用,在这里,deprecated“文字,可向用户推荐另法来达到同样的目的。如@deprecated使用@see:增加一个超若指向类、方法或变量可在@see后直接写上类、方法或变量名,书写方法时可省略包、类名,特性会默认为当前包或类。注意:类、方法、变量名间使用“#

@see若指向一个具体的URL,则直接书写HTML锚。如@see<a ”>TheJava””(@see“java1.2类注释必须置于任何一个import语句后面,同时位于class@author@version@param变量描述:给“parameters(参数)小节增添一个条目。@return描述:增添一个“returns(返回值)小节。throws(

@paramx要格式化的数字@return格式化成的字串@throws如参数错误,产生IllegalArgumentException(参数违例书写格式缩进应该是每行4个空格,在使用不同的源代码管理工具时Tab字符将因为UltrEditJava源代码编辑器的话,你可以通过如下操作来保存Tab字符,方法是通过UltrEdit中先设定Tab使用的长度室4个空格,然后用Format|TabstoSpaces菜单将Tab转换为空格。case80字符.源代码一般不会超过这个宽度,并导致无法完整显示,但这一设置也可以灵活调整.在任何情况下,超长的语句应该在一个逗号或者一个操作符后折行.一条语句折行后,4个 sizeof(_UL= ({...//program}repssnInd=sendData[index].repssn_index; =sendData[index].nill;if{...//program}repssnInd=sendData[index].repssn_index; =sendData[index].nill;如->左括号和后一个字符之间不应该出现空格,同样,右括号和前一个字符之间也不应该出现空格.下面的例子说明括号和空格的错误及正确使用:CallProc(AParameter); //错误 ’和‘})时与它们的语句左对齐。在函数体的开始、类的定义、结构的定义、枚if、for、do、while、switch、case语句中的程序都要采用如上for(...)...//program}if{...//program}voidexampleFunction(void{...//program}for{...//program}if{...//program}voidexampleFunction(void{...//program}}if{”必须回行编写,且if、for、do、while等语句的执行语句部分必须用{}括起回if(pUserCR==NULL)if(pUserCR=={}if((taskNo<maxActTaskNumber)&&(timeNo<minActTimber)&&(n7StatItemValid(statItem))){...//program}for(i=0,j=0;(i<bufferKeyword[WordIndex].word_length)&&(j<newKeyword.word_length);i++,j++){...//programfor(i=0,j=(i<firstWordLength)&&(j<secondWordLength);i++,j++){...//program}pare((BYTE*)&(BYTE*)&(actTaskTable[taskno].statObject),sizeof(_STAT_OBJECT));n7StatFlashActDuration(statItem,frameID+index,statObjectrect.length= rect.width=rect.length=rect.width=6.26.2去掉没必要的公共变量间的关系。说明:在对变量的同时,应对其含义、作用及取值范围进行注释说当向公共变量传递数据时要十分防止赋与不合理的值或越界等现象发生。说明:对公共变量赋值时,若有必要应进行检查,以提高代码的可说明:若使用了较 名规则,那么此问题可自动消除6.36.3exitmain中可以被调用外,其他的地方不应该调用。因为这样做不给任何代码机会来截获退出。一个类似服务的程序不应该因为某一个库申明的错误应该抛出一个RuntimeException或者派生的异常。申明的错误主JAVA使用成收集技术来代替计数。但是这样会导致一个问题你必须在使用完对象的实例以后进行工(将对象置为NULL后,计数自动-1finalfinal的(除非程序的框架要求final大部分的类成员变量应该定义为private7编程7编程技除非必要,最好与返回值类型不同的变量,以编译系统默认的转换说明:因为数据类型转换或多或少存在说明:程序中的代码不仅占用额外的空间,而且还常常影响程序的功 .8说明:根据模块的功能图或/BOOLBOOL参数值无意义,TURE/FALSE的含义是非BOOLNULL也是一个无意义的单词。bytebytecharacters,你可以这么做:"oworld!".getBytes();UtilityUtility类(仅仅提供方法的类)应该被申明为抽象的来防止被继承或被初objectArguments=newObject[]{argumentsclass{publicstaticfinalColourBLACK=newColour(0,0,0);publicstaticfinalColourRED=newColour(0xFF,0,0);publicstaticfinalColourGREEN=newColour(0,0xFF,0);publicstaticfinalColourBLUE=newColour(0,0,0xFF);publicstaticfinalColourWHITE=newColour(0xFF,0xFF,}这种技术实现了REDGREENBLUE等可以象其他语言的枚举类型一样使用的常量。他们可以用==操作符来比较。newColour(0,0,0),那么这就是另外一个对象。==操作符就会产生错误。equal()方法仍然有效。由于这个原因,这个技术的缺陷最好注明在AWTAWTSwing如果要将AWT组件和Swing组件混合起来使用的话,请使用。实AWTAWTJscrollPaneAWT组件的时候一定要用AWTScrollPane组件来实现。InternalFrameAWT尽量不要这么做,要不然会出现不可预料的Z-OrderAWTSwingAWTPOP-UP菜单的时候要,尽量不要这样使用。synchronizedsynchronizedsynchronized,应该在必要的时候再使用它,这是BorlandJbulidersynchronized这个关键字,如果你的断点设在这些for(i=0;i<MAX_ADD_NUMBER;{sum+=BackSum=sum;/*backupsum}语句“BackSumsum;”完全可以放在forfor(ind=0;ind<MAX_ADD_NUMBER;{sum+=} =sum;/*backupsum说明:对代码优化可提高效率,但若考虑不周很有可能引起严重说明:减少CPU切入循环层的次数。for(row=0;row<100;{for(col=0;col<5;{sum+=}}for(col=0;col<5;{for(row=0;row<100;{sum+=}}for(i=0;i<MAX_RECT_NUMBER;{if(DataType=={}{

AreaSum+=RectLengthSum+=Rect[i].length;RectWidthSum+=Rect[i].width;}}if(DataType=={for(i=0;i<MAX_RECT_NUMBER;{AreaSum+=}}{for(i=0;i<MAX_RECT_NUMBER;{RectLengthSum+=Rect[i].length;RectWidthSum+=rec

温馨提示

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

最新文档

评论

0/150

提交评论