如何豐富eclipse註解的內容
eclipse -> Window -> Preferences -> Code Templates -> Comments (Comments代表註釋模板)
1、 Files(Java檔案註釋)
/**
* Project Name:${project_name}
* File Name:${file_name}
* Package Name:${package_name}
* Date:${date}${time}
* Copyright (c) ${year}, [email protected] All Rights Reserved.
*/
2、Types(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
*/
3、Fields(類欄位註釋)
/**
* ${field}:${todo}(用一句話描述這個變量表示什麼).
* @since JDK 1.6
*/
4、Constructors(建構函式註釋)
/**
* Creates a new instance of ${enclosing_type}.
* ${tags}
*/
5、Methods(Java方法註釋)
/**
* ${enclosing_method}:(這裡用一句話描述這個方法的作用). <br/>
* ${todo}(這裡描述這個方法適用條件 – 可選).<br/>
* ${todo}(這裡描述這個方法的執行流程 – 可選).<br/>
* ${todo}(這裡描述這個方法的使用方法 – 可選).<br/>
* ${todo}(這裡描述這個方法的注意事項 – 可選).<br/>
* @author ${user}
* ${tags}
* @since JDK 1.6
*/
6、Overriding methods(重寫方法註釋)
/**
* ${todo} 簡單描述該方法的實現功能(可選).
* ${see_to_overridden}
*/
7、Delegate methods(代理方法註釋)
/**
* ${tags}
* ${see_to_target}
*/
8、Getters(Java Getter方法註釋)
/**
* ${bare_field_name}.
* @return the ${bare_field_name}
* @since JDK 1.6
*/
9、Setters(Java Setters方法註釋)
/**
* ${param}.
* @param ${param} the ${bare_field_name} to set
* @since JDK 1.6
*/
eclipse -> Window -> Preferences -> Code Templates -> Code (Code代表程式碼模板)
1、New Java files(新建java檔案程式碼模板)
/**
* Project Name:${project_name}
* File Name:${file_name}
* Package Name:${package_name}
* Date:${date}${time}
* Copyright (c) ${year}, [email protected] 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}
2、Method body(方法體模板)
// ${todo} Auto-generated method stub
${body_statement}
3、Constructor body(建構函式模板)
${body_statement}
// ${todo} Auto-generated constructor stub
4、Getter body(欄位Getter方法模板
return ${field};
5、Setter body(欄位Setter方法模板)
${field} = ${param};
6、Catch block body(異常catch程式碼塊模板)
// ${todo} Auto-generated catch block
${exception_var}.printStackTrace();
詳細codetemplates.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}, [email protected] 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} <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
*/</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}:(這裡用一句話描述這個方法的作用). <br/>
* ${todo}(這裡描述這個方法適用條件 – 可選).<br/>
* ${todo}(這裡描述這個方法的執行流程 – 可選).<br/>
* ${todo}(這裡描述這個方法的使用方法 – 可選).<br/>
* ${todo}(這裡描述這個方法的注意事項 – 可選).<br/>
*
* @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}, [email protected] 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}
</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>