Java的注释,标识符、标识符的命名规范

一:Java的注释,标识符及命名规范

一:Java的注释

Java注释有三种:

第一种

单行注释:快捷键Ctrl+/再次按撤销注释

一般用来注释局部变量。

在这里插入图片描述

第二种

多行注释:Ctrl+shift+/ 撤销Ctrl+shift+\

可用来注释文件头、算法实现、方法中的复杂代码块、修改记录

在这里插入图片描述

第三种

文档注释:shift+alt+j

可用来注释类、接口、静态方法、成员方法、静态变量、成员变量、常量

或者在定义完:注释类、接口、静态方法、成员方法、静态变量、成员变量、常量后,在上面加上/**在按Enter建也能生成
在这里插入图片描述
Enter键之后
在这里插入图片描述

二:常见注释

1、类注释

在每个类前面加上类注释,注释内容包括类或接口名,类和接口功能描述,作者,创建日期,所属公司、版本等:

Ecplice在/**+Enter自动生成相关信息设置:

在这里插入图片描述

在这里插入图片描述属性,方法等等自动生成相应的注解也是在此设置;

编码

规范系列(一):Eclipse Code Templates设置

打开Window->Preferences->Java->Code Style->Code Templates
在这里插入图片描述

Eclipse设置Code Templates

点击"Import",导入模板codetemplates.xml文件。

codetemplates.xml内容是我们自己预先定义好的,在这里先不详细描述,我们可以看到Eclipse Code Templates界面中间Configure generated code and comments区域包含了两个菜单树:Comment、Code,如下图所示:
在这里插入图片描述
Comments代表注释模板,Code代表代码模板,其中每一个子菜单代表子项的模板。

我们只要点击某一个子项,就会在界面下方的Pattern区域看到该项我们所定义的模板内容和格式,如下图所示:
在这里插入图片描述
如上图所示,当我们点击Comments下的Files子菜单时,下面的Pattern会显示Java文件的头部注释。

下面详细列出每一个子项的模板格式:

Comments–>Files(Java文件注释)
Java代码 收藏代码

/** 
 * Project Name:${project_name} 
 * File Name:${file_name} 
 * Package Name:${package_name} 
 * Date:${date}${time} 
 * Copyright (c) ${year}, chenzhou1025@126.com All Rights Reserved. 
 * 
 */  

Comments–>Types(Java类注释)
Java代码 收藏代码

/** 
 * ClassName: ${type_name} <br/> 
 * Function: ${todo} ADD FUNCTION. <br/> 
 * Reason: ${todo} ADD REASON(可选). <br/> 
 * date: ${date} ${time} <br/> 
 * 
 * @author ${user} 
 * @version ${enclosing_type}${tags} 
 * @since JDK 1.6 
 */  

Comments–>Fields(类字段注释)
Java代码 收藏代码

/** 
 * ${field}:${todo}(用一句话描述这个变量表示什么). 
 * @since JDK 1.6 
 */  

Comments–>Constructors(构造函数注释)
Java代码 收藏代码

/** 
 * Creates a new instance of ${enclosing_type}. 
 * 
 * ${tags} 
 */ 

Comments–>Methods(Java方法注释)
Java代码 收藏代码

/** 
 * ${enclosing_method}:(这里用一句话描述这个方法的作用). <br/> 
 * ${todo}(这里描述这个方法适用条件 – 可选).<br/> 
 * ${todo}(这里描述这个方法的执行流程 – 可选).<br/> 
 * ${todo}(这里描述这个方法的使用方法 – 可选).<br/> 
 * ${todo}(这里描述这个方法的注意事项 – 可选).<br/> 
 * 
 * @author ${user} 
 * ${tags} 
 * @since JDK 1.6 
 */  

Comments–>Overriding methods(重写方法注释)
Java代码 收藏代码

/** 
 * ${todo} 简单描述该方法的实现功能(可选). 
 * ${see_to_overridden} 
 */  

Comments–>Delegate methods(代理方法注释)
Java代码 收藏代码

/** 
 * ${tags} 
 * ${see_to_target} 
 */  

Comments–>Getters(Java Getter方法注释)
Java代码 收藏代码

/** 
 * ${bare_field_name}. 
 * 
 * @return  the ${bare_field_name} 
 * @since   JDK 1.6 
 */  

Comments–>Setters(Java Setters方法注释)
Java代码 收藏代码

/** 
 * ${param}. 
 * 
 * @param   ${param}    the ${bare_field_name} to set 
 * @since   JDK 1.6 
 */  

Code–>New Java files(新建java文件代码模板)
Java代码 收藏代码

/** 
 * Project Name:${project_name} 
 * File Name:${file_name} 
 * Package Name:${package_name} 
 * Date:${date}${time} 
 * Copyright (c) ${year}, chenzhou1025@126.com All Rights Reserved. 
 * 
*/  
${filecomment}  
  
${package_declaration}  
/** 
 * ClassName:${type_name} <br/> 
 * Function: ${todo} ADD FUNCTION. <br/> 
 * Reason:   ${todo} ADD REASON. <br/> 
 * Date:     ${date} ${time} <br/> 
 * @author   ${user} 
 * @version   
 * @since    JDK 1.6 
 * @see       
 */  
${typecomment}  
${type_declaration}  

Code–>Method body(方法体模板)
Java代码 收藏代码

// ${todo} Auto-generated method stub  
${body_statement}  

Code–>Constructor body(构造函数模板)
Java代码 收藏代码

${body_statement}  
// ${todo} Auto-generated constructor stub  

Code–>Getter body(字段Getter方法模板)
Java代码 收藏代码

return ${field};  

Code–>Setter body(字段Setter方法模板)
Java代码 收藏代码

${field} = ${param};  

Code–>Catch block body(异常catch代码块模板)
Java代码 收藏代码

// ${todo} Auto-generated catch block  
${exception_var}.printStackTrace();  

其中codetemplates.xml内容如下:
Xml代码 收藏代码

<?xml version="1.0" encoding="UTF-8" standalone="no"?><templates><template autoinsert="false" context="gettercomment_context" deleted="false" description="Comment for getter method" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name="gettercomment">/**  
 * ${bare_field_name}.  
 *  
 * @return  the ${bare_field_name}  
 * @since   JDK 1.6  
 */</template><template autoinsert="false" context="settercomment_context" deleted="false" description="Comment for setter method" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.settercomment" name="settercomment">/**  
 * ${param}.  
 *  
 * @param   ${param}    the ${bare_field_name} to set  
 * @since   JDK 1.6  
 */</template><template autoinsert="false" context="constructorcomment_context" deleted="false" description="Comment for created constructors" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name="constructorcomment">/**  
 * Creates a new instance of ${enclosing_type}.  
 *  
 * ${tags}  
 */  
</template><template autoinsert="false" context="filecomment_context" deleted="false" description="Comment for created Java files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.filecomment" name="filecomment">/**  
 * Project Name:${project_name}  
 * File Name:${file_name}  
 * Package Name:${package_name}  
 * Date:${date}${time}  
 * Copyright (c) ${year}, chenzhou1025@126.com All Rights Reserved.  
 *  
 */</template><template autoinsert="false" context="typecomment_context" deleted="false" description="Comment for created types" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.typecomment" name="typecomment">/**  
 * ClassName: ${type_name} &lt;br/&gt;  
 * Function: ${todo} ADD FUNCTION. &lt;br/&gt;  
 * Reason: ${todo} ADD REASON(可选). &lt;br/&gt;  
 * date: ${date} ${time} &lt;br/&gt;  
 *  
 * @author ${user}  
 * @version ${enclosing_type}${tags}  
 * @since JDK 1.6  
 */</template><template autoinsert="false" context="fieldcomment_context" deleted="false" description="Comment for fields" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name="fieldcomment">/**  
 * ${field}:${todo}(用一句话描述这个变量表示什么).  
 * @since JDK 1.6  
 */</template><template autoinsert="false" context="methodcomment_context" deleted="false" description="Comment for non-overriding methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name="methodcomment">/**  
 * ${enclosing_method}:(这里用一句话描述这个方法的作用). &lt;br/&gt;  
 * ${todo}(这里描述这个方法适用条件 – 可选).&lt;br/&gt;  
 * ${todo}(这里描述这个方法的执行流程 – 可选).&lt;br/&gt;  
 * ${todo}(这里描述这个方法的使用方法 – 可选).&lt;br/&gt;  
 * ${todo}(这里描述这个方法的注意事项 – 可选).&lt;br/&gt;  
 *  
 * @author ${user}  
 * ${tags}  
 * @since JDK 1.6  
 */</template><template autoinsert="false" context="overridecomment_context" deleted="false" description="Comment for overriding methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name="overridecomment">/**  
 * ${todo} 简单描述该方法的实现功能(可选).  
 * ${see_to_overridden}  
 */</template><template autoinsert="true" context="delegatecomment_context" deleted="false" description="Comment for delegate methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name="delegatecomment">/**  
 * ${tags}  
 * ${see_to_target}  
 */</template><template autoinsert="false" context="newtype_context" deleted="false" description="Newly created files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.newtype" name="newtype">/**  
 * Project Name:${project_name}  
 * File Name:${file_name}  
 * Package Name:${package_name}  
 * Date:${date}${time}  
 * Copyright (c) ${year}, chenzhou1025@126.com All Rights Reserved.  
 *  
*/  
${filecomment}  
  
${package_declaration}  
/**  
 * ClassName:${type_name} &lt;br/&gt;  
 * Function: ${todo} ADD FUNCTION. &lt;br/&gt;  
 * Reason:   ${todo} ADD REASON. &lt;br/&gt;  
 * Date:     ${date} ${time} &lt;br/&gt;  
 * @author   ${user}  
 * @version    
 * @since    JDK 1.6  
 * @see        
 */  
${typecomment}  
${type_declaration}  
</template><template autoinsert="true" context="classbody_context" deleted="false" description="Code in new class type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.classbody" name="classbody">  
</template><template autoinsert="true" context="interfacebody_context" deleted="false" description="Code in new interface type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name="interfacebody">  
</template><template autoinsert="true" context="enumbody_context" deleted="false" description="Code in new enum type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.enumbody" name="enumbody">  
</template><template autoinsert="true" context="annotationbody_context" deleted="false" description="Code in new annotation type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name="annotationbody">  
</template><template autoinsert="true" context="catchblock_context" deleted="false" description="Code in new catch blocks" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.catchblock" name="catchblock">  
// ${todo} Auto-generated catch block  
${exception_var}.printStackTrace();  
</template><template autoinsert="false" context="methodbody_context" deleted="false" description="Code in created method stubs" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.methodbody" name="methodbody">  
// ${todo} Auto-generated method stub  
${body_statement}</template><template autoinsert="true" context="constructorbody_context" deleted="false" description="Code in created constructor stubs" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name="constructorbody">  
${body_statement}  
// ${todo} Auto-generated constructor stub  
</template><template autoinsert="true" context="getterbody_context" deleted="false" description="Code in created getters" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.getterbody" name="getterbody">return ${field};</template><template autoinsert="true" context="setterbody_context" deleted="false" description="Code in created setters" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.setterbody" name="setterbody">${field} = ${param};</template></templates>  

设置Code Templates的目的主要是为了统一各种注释的格式以及代码的模板,只要设定好Code Templates之后利用Eclipse就可以方便地生成我们自定义的注释,开发人员也容易接受!

具体的可以参考:https://www.iteye.com/blog/chenzhou123520-1625629
IDEA中Eclipse Code Formatter插件设置和使用,以及注释模板的修改
https://www.cnblogs.com/zhang-yawei/p/9991011.html

2、属性注释

在每个属性前面必须加上属性注释,注释如下:
在这里插入图片描述

3、方法注释

在每个方法前面必须加上方法注释,注释如下:
在这里插入图片描述

4、构造方法注释

在每个构造方法前面必须加上注释,注释如下:
在这里插入图片描述

5、方法内部注释

在方法内部使用单行或者多行注释,该注释根据实际情况添加。
在这里插入图片描述

三:java命名规范

1、项目名全部小写

2、包名全部小写

3、类名首字母大写,若类名由多个单词构成,每个单词首字母大写,即驼峰命名法

4、变量名、方法名首字母小写,若其由多个单词构成,每个单词首字母大写,即小驼峰命名法

5、常量名全部大写

6、以上所有命名遵循规则:

名称只能由数字、字母、下划线、$符组成

不能以数字开头

不能是有Java的关键字和保留字(下节主要属性关键字和保留字)

严禁使用汉字和拼音

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值