首页编程java编程java书写规范 JAVA代码规范

java书写规范 JAVA代码规范

编程之家2026-05-291193次浏览

大家好,今天来为大家分享java书写规范的一些知识点,和JAVA代码规范的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!

java书写规范 JAVA代码规范

C++、C、或者java,这些语言写代码时应该要怎么规范格式,

C/C++源代码书写规范1.在.h/.cpp的开头应有一段格式统一的说明,内容包括:a.文件名(FileName);b.创建人(Creator);c.文件创建时间(Date);d.简短说明文件功能、用途(Comment)。例:////////////////////////////////////////////// FileName: GetVersion.h// Creator: Liu Haifeng// Date: 2002-10-28// Comment: Get file version information////////////////////////////////////////////2.对于主要功能函数应有注释说明。内容包括:功能、入口/出口参数,必要时还可有备注或补充说明,对于函数中的主要功能代码,也应有注释说明。注释以英文为主。例://////////////////////////////////////////////Remarks:// Check file whether exist////Parameters:// LPCTSTR lpszPathName: Input full path name////Return values:// int: Non-zero means success// Zero means failure////////////////////////////////////////////3.每列代码的长度推荐为80列,最长不得超过120列;折行以对齐为准。例:HANDLE KSOpenFile(const char cszFileName[],int nMode);或者:BOOL KSReadFile(HANDLE hFile,void*pvBuffer,int nReadSize,int*pnReadSize);4.循环、分支代码,判断条件与执行代码不得在同一行上。例:正确:if(n==-2)n= 1;elsen= 2;不得写做:if(n==-2) n= 1;else n= 2;5.指针的定义,*号既可以紧接类型,也可以在变量名之前。例:可写做:int* pnsize;也可写做:int*pnsize;但不得写做:int* pnsize;6.在类的成员函数内调用非成员函数时,在非成员函数名前必须加上"::"。例:::Sleep(2000);7.函数入口参数有缺省值时,应注释说明。例:BOOL KSSaveToFile(const char cszFileName[],BOOL bCanReplace/*= TRUE*/);或者:BOOL KSSaveToFile(const char cszFileName[],BOOL bCanReplace//= TRUE);8. else if必须写在一行。9.与‘{’、‘}’有关的各项规定:9.1‘{’、‘}’应独占一行。在该行内可有注释。例:正确:for(i= 0; i< cbLine; i++){//.....printf("Line%d:", i);printf("%s\n", pFileLines);}不得写做:for(i= 0; i< cb; i++){ printf("Line%d:", i);printf("%s\n", pFileLines);}9.2‘{’必须另起一行,‘{’之后的代码必须缩进一个Tab。‘{’与‘}’必须在同一列上。例:正确:if(i> 0){m= 1;n++;}不得写做:if(i> 0){m= 1;n++;}例外:if(i== 0){ ASSERT(FALSE); return;}9.3在循环、分支之后若只有一行代码,虽然可省略‘{’、‘}’,但不推荐这么做。若省略后可能引起歧义,则必须加上‘{’、‘}’。例:正确:if(n==-2)n= 1;elsen= 2;或者:if(n==-2){ n= 1;}else if(n!= nTemp){ n= 2;}else{ n= 3;}不得写做:if(n==-2)n= 1;else if(n!= nTemp)n= 2;elsen= 3;不推荐:if(i< 1){ n= 1;}else{if(i== 1){ n= 2;}else{if(i> 1){ n= 3;}}}10.与空格有关的各项规定。10.1在所有两目、三目运算符的两边都必须有空格。在单目运算符两端不必空格。但在‘->’、‘::’、‘.’、‘[’、‘]’等运算符前后,及‘&’(取地址)、‘*’(取值)等运算符之后不得有空格。例:正确:int n= 0, nTemp;for(int i= nMinLine; i<= nMaxLine; i++)不得写做:int n=0, nTemp;for( int i=nMinLine; i<=nMaxLine; i++)10.2 for、while、if等关键词之后应有1个空格,再接‘(’,之后无空格;在结尾的‘)’前不得有空格。例:正确:if(-2== n)不得写做:if(-2== n)或if(-2== n)等等。10.3调用函数、宏时,‘(’、‘)’前后不得有空格。例:正确:printf("%d\n", nIndex);不得写做:printf("%d\n", nIndex);printf("%d\n", nIndex);等等。10.4类型强制转换时,‘(’‘)’前后不得有空格例:可写做:(KSFile*)pFile;也可写做:(KSFile*)pFile不得写做:( KSFile*)pFile( KSFile*) pFile11.与缩进有关的各项规定11.1缩进以 Tab为单位。1个 Tab为 4个空格11.2下列情况,代码缩进一个 Tab:1.函数体相对函数名及'{'、'}'。例:int Power(int x){return(x* x);}2. if、else、for、while、do等之后的代码。3.一行之内写不下,折行之后的代码,应在合理的位置进行折行。若有+-*/等运算符,则运算符应在上一行末尾,而不应在下一行的行首。11.3下列情况,不必缩进:switch之后的 case、default。例:switch(nID){case ID_PLAY:......break;case ID_STOP:......break;default:......break;12.对于涉及到系统的功能调用,要求使用系统提供的宏,不得直接使用具体的数值。例: char szSystemPath[MAX_PATH]={0};正确char szSystemPath[260]={0};错误13.关于函数编写的规定13.1除了非常简单的函数或者没有必要,函数需要有返回值,并且推荐返回值的类型为int,成功时为 true,失败时为false。不推荐直接使用1和0来表示。13.2在函数内部变量定义全部放在函数的开始处,不能在代码中间出现变量定义。变量定义需要初始化值,一般是0、false、NULL等。13.3程序员自行编写的函数不推荐使用DWORD等指明字节长度的变量类型,推荐使用unsigned long等变量类型。对于ULONG等vc系统定义的变量类型,推荐使用unsigned long来代替。如果调用系统API,在MSDN中已经指明了是DWORD等类型,则可以使用。13.4推荐使用int nResult作为函数自身的返回值变量,int nRetCode、BOOL bRetCode作为调用其他函数的返回值变量。13.5推荐使用goto语句来统一函数出口,goto语句一般只能跳转到一个函数出口,最多只能有两个,出口标识必须命名为Exit0和Exit1。在出口处必须显式检查曾经申请过的系统资源(如内存),并且进行释放。13.6如果编写DLL,除非特殊情况,导出函数的调用类型必须是__stdcall,便于多模块协同工作。附录:1.函数编写示范///////////////////////////////////////////////////////////////////////// Remarks:// Get file version information//// Parameters:// [in] const char cszPathName: Input file path name// [out] PVERSION_INFO*pVersionInfo: File version information//// Return values:// int: Non-zero means success, zero means failure///////////////////////////////////////////////////////////////////////int GetFileVersion(const char cszPathName, PVERSION_INFO*pVersionInfo){int nResult= false;int nRetCode= false;char szSystemPath[MAX_PATH]={0};nRetCode= IsFileExist(cszPathname);if(!nRetCode)goto Exit0;//Others code herenResult= true;Exit0:return nResult;}以前你的习惯可能是我定义一个函数,通过传递参数去实现这个函数的功能。面向对象编程要体现三个特点“封装、继承、多态”;比如你写一个飞这个函数,你需要在这里传递参数飞机。换个角度,你定义一个类是飞机,那这个飞机在封装的过程就有飞。降落等这功能(函数)。你想要用飞这个功能(函数)的时候,你只需调用飞机这个类“飞”这个成员函数。

JAVA中Bean是什么意思书写规范是什么

javaBean在MVC设计模型中是model,又称模型层,在一般的程序中,我们称它为数据层,就是用来设置数据的属性和一些行为,然后我会提供获取属性和设置属性的get/set方法JavaBean是一种JAVA语言写成的可重用组件。

为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean通过提供符合一致性设计模式的公共方法将内部域暴露成员属性。众所周知,属性名称符合这种模式,其他Java类可以通过自身机制发现和操作这些JavaBean属性。

用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。

JavaBean书写规范:

(1)JavaBean类必须是一个公共类,并将其访问属性设置为public,如:publicclassuser{?}

java书写规范 JAVA代码规范

(2)JavaBean类必须有一个空的构造函数:类中必须有一个不带参数的公用构造器,例如:publicUser(){?}

(3)一个javaBean类不应有公共实例变量,类变量都为private,如:privateintid;

(4)javaBean属性是具有getter/setter方法的成员变量。也可以只提供getter方法,这样的属性叫只读属性;也可以只提供setter方法,这样的属性叫只写属性;如果属性类型为boolean类型,那么读方法的格式可以是get或is。例如名为abc的boolean类型的属性,它的读方法可以是getAbc(),也可以是isAbc();

一般JavaBean属性以小写字母开头,驼峰命名格式,相应的getter/setter方法是get/set接上首字母大写的属性名。例如:属性名为userName,其对应的getter/setter方法是getUserName/setUserName。

但是,还有一下几种特殊情况:

1、如果属性名的第二个字母大写,那么该属性名直接用作getter/setter方法中get/set的后部分,就是说大小写不变。例如属性名为uName,方法是getuName/setuName。

java书写规范 JAVA代码规范

2、如果前两个字母是大写(一般的专有名词和缩略词都会大写),也是属性名直接用作getter/setter方法中get/set的后部分。例如属性名为URL,方法是getURL/setURL。

3、如果首字母大写,也是属性名直接用作getter/setter方法中get/set的后部分。例如属性名为Name,方法是getName/setName,这种是最糟糕的情况,会找不到属性出错,因为默认的属性名是name。

所以在JavaBean命名时应该注意符合以上命名规范。综上述文章,为大家讲解了Java中的bean用法的介绍,以及书写规范。

java初学者,应该如何学习java呢

初学Java编程时,大家通常会对学习方法、知识难点做一个了解,但学一项技能不仅仅只是这样,学习过程少不了我们的亲身参与,那我们对自己的学习条件了解是否充分?心理上思想上是否做好了准备?要准备学到哪种程度?···这些其实都是学习编程时需要注意到的。

学Java编程的目的?

知乎无数的优秀学习类回答、技术大佬的分享,在开头的第一段都会提到的,是想清楚做某事的目的是什么。千万别觉得这样很老套很无用,明确学习目的其实就是在做思想上的准备,不然在后期非常容易缺乏坚持下去的信念。

因为没有描述,就假设题主同学学习Java是为了从事相关的开发工作,去发现一下真实的需求就能知道,“找工作”其实都是表象,真正的本质是“高薪”,是“挣钱”是“有发展”。那么“薪资高”就是学编程的目的之一。

稍微多想想我们就会有接下来的问题:企业招聘的基本要求是哪些?需要达到什么样的技术水平薪资才高?薪资比较高的Java岗位是哪些?大公司都需要哪种技术人才?

问题比较多也没关系,接下来就是一步步理清楚。

有没有自己的学习目标?

学习目标围绕学习目的而定,别太贪心什么都想学,学不完的,太高深的概念对于初学者也是有毒的。

高薪资的岗位需要的技术能力都在Java的知识体系中了,我们从整体到局部开始,先了解Java的大致全貌--Java是用来做什么的。

按Java的应用场景来分有三类:J2SE,J2ME和J2EE,这也就是SunONE(Open NetEnvironment)体系。

J2SE就是Java2的标准版,主要用于桌面应用软件的编程;

J2ME主要应用于嵌入式系统开发,如手机和PDA的编程;

J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站,OA系统和ERP系统。接着是局部--比如其中涉及J2EE方向的是什么岗位,需要会什么?且薪资是多少?

要求会是哪些?

在此场长还要补充两句,对于程序员来说,学历高低不是唯一标准,但绝对是加分项,能提升学历就尽快提升,不要让它在后期成为你职业发展的阻碍。

以上从“整体到局部”的好处是,不仅为你的学习找到重心,还是在定位你的技术重心,也将会成就你写在简历中的那句“本人擅长XX开发,熟悉XXX技术,且精通XXXX,在XXX有丰富经验。”

有没有一个学习计划?

有了学习目的,找到了一个高薪的技术方向和技术重点,有了这些信息,你就可以开始制定学习计划了。

一个科学而合理的学习计划,关键并不是面面俱到的详细,而是“极高的可执行性”,要避免看到自己定的计划就头疼,无法完成这样的情况,就要注意别一开始就把自己逼得太狠。

记得围绕着学习目标开展学习,专注能保持高效率,这也能减少你的学习时长,还能保证学习效果。

最后,

编程讲的是多多练习没错,但别忘了编程背后是思维,是逻辑,是解决问题的思路,希望在学编程的你,能把编程看成一种智力的游戏,在提升自己心智的同时,看到一个奇特而有趣的代码世界。

祝编程愉快。

关于java书写规范,JAVA代码规范的介绍到此结束,希望对大家有所帮助。

人工智能ai系统 什么是AI系统好用的编程软件?免费学编程的app