转载自: 善用Eclipse的代码模板功能

Eclipse是个非常强大的IDE,作为一个JAVA程序员,几乎每天都与它打交道,但是它强大的功能都用到了吗?

今天让我们来看一下Eclipse中的“代码模板”功能。什么是代码模板呢?举个例子,一个很常见的应用,如何在一个类中中建立一个main函数?

这还不简单?话音未落,只见你在键盘上飞快的敲击着,三下五除二便搞定了。

OK,打字很快的说。但是,是不是应该思考下,对于这种非常固定的代码,有必要一个字母一个字母的敲吗?

作为IDE,其中一个设计哲学就是能帮用户干的就帮用户干,像上面这种情况,就该是Eclipse代码模板发挥作用的时候。

我们只需在类体中键入main,然后使用Eclipse的代码提示快捷键(默认为Alt+/),回车后,就可以看到Eclipse自动帮我们完成了main函数的完整定义,是不是非常方便?

这只是个简单的例子,其实Eclipse默认还提供了很多代码模板。打开 Windows->Preferences->Java->Editor->Templates,可以看到所有已定义的代码模板列表。

再举一个更常见的例子,在代码中经常需要在控制台输出一些数据

System.out.pringln("hello, world");

以前如果你已经习惯了一个字母一个字母的敲的话,那么现在你可以尝试一下键入sysout,然后按Alt+/,呵呵,整个语句都自动完成了,而且光标还非常体贴的停在括号中,方便你继续输入,是不是很强大?

在编程中有时还会遇到另一类问题,比如我想把某些代码加到try/catch块中,进行异常检测。在代码模板的帮助下,你完全不用手工键入这部分代码,也不用去管代码缩进,你只需要选中要处理的代码块,然后按Alt+Shift+Z,回车后, Eclipse会自动为所选代码块包上try/catch语句。

尽管Eclipse默认已经为我们提供了很多有用的模板,但肯定是不够用的,因此我们需要尝试创建自己的代码模板。

我们以一个很现实的例子来说明,在实际开发中,经常会需要测试某段代码的执行时间,一般来说我们会使用以下方法。

分别记录代码执行前和执行后的时间戳,然后计算两个时间戳的差值。这段代码是非常固化的,如果每次都手工敲入,很令人崩溃,但是如果使用“代码模板”功能来做,就方便多了。

打开 Windows->Preferences->Java->Editor->Templates,点击New...,新建代码模板,如下图所示录入代码,创建一个名为“xinneng“的模板。

(注意:所有“${}”都是模板变量,如${line_selection}表示当前光标选中的代码片段,${cursor}表示代码生成结束后光标所处的位置,还有很多参数大家可以参考Eclipse提供的帮助文档。)

完成后,选中要测试的代码块,使用快捷键Alt+Shift+Z,可以看到菜单中多了一项xinneng,点击xinneng(),Eclipse自动在选中代码块的上下加上了我们刚才录入的测试代码,酷吧?

好了,通过上面简单的介绍,大家对Eclipse的“代码模板”功能应该有个大致的了解了,如果想对这一功能进行更深入的研究,可以去查阅相关的帮助文档和资料。

善用Eclipse的代码模板功能的更多相关文章

  1. eclipse自动提示功能没了的解决办法(转载)

    eclipse自动提示功能没了的解决办法 标签: eclipse联想 2012-08-09 14:32 24687人阅读 评论(7) 收藏 举报  分类: Android(38)  版权声明:本文为博 ...

  2. 定制Eclipse IDE之功能篇(二)

    上文回顾:定制Eclipse IDE之功能篇(一)   这一篇文章将记录一些Eclipse插件小功能,Smart but Useful.   一.设置工作空间 文本文件的编码   解决办法: 在org ...

  3. JAVA基础学习之IP简述使用、反射、正则表达式操作、网络爬虫、可变参数、了解和入门注解的应用、使用Eclipse的Debug功能(7)

    1.IP简述使用//获取本地主机ip地址对象.InetAddress ip = InetAddress.getLocalHost();//获取其他主机的ip地址对象.ip = InetAddress. ...

  4. Linux Eclipse代码提示功能设置(Java & C/C++)

    最近在Linux下开发,由于长期使用Visual Studio 2010,对代码提示功能情有独钟,现在在Linux下,使用Eclipse做开发,当然免不了怀念Visual Studio强悍的代码提示, ...

  5. Eclipse代码提示功能设置(Java & Eclipse+CDT C/C++)

    http://developer.51cto.com/art/200907/136242.htm http://blog.chinaunix.net/u/21684/showart_462486.ht ...

  6. eclipse自定义代码模板

    eclipse自定义代码模板 Eclipse 提供了非常多的代码模板,我们可以通过 Windows->Preferences->Java->Editor->Templates ...

  7. Eclipse的调试功能的10个小窍门[转]

    原文链接:http://www.importnew.com/6164.html 你可能已经看过一些类似“关于调试的N件事”的文章了.但我想我每天大概在调试上会花掉1个小时,这是非常多的时间了.所以非常 ...

  8. VS和Eclipse的调试功能哪个更强大?

    以前一直用VS 2012来调试C/C++代码,F5.F10.F11用起来甚是顺手,前面也写过一篇关于VS最好用的快捷键:Visual Studio最好用的快捷键(你最喜欢哪个), 所以对于调试C/C+ ...

  9. Eclipse的调试功能的10个小窍门

    你可能已经看过一些类似“关于调试的N件事”的文章了.但我想我每天大概在调试上会花掉1个小时,这是非常多的时间了.所以非常值得我们来了解一些用得到的功能,可以帮我们节约很多时间.所以在这个主题上值得我再 ...

随机推荐

  1. 记一次MyBatis的错误

    错误信息:java.lang.StackOverflowError 关于这个错误的深度解析,大家可以参考这篇博文,比较详细:https://blog.csdn.net/zc375039901/arti ...

  2. 《Java程序设计》第2周学习总结(Markdown语法修改版)

    20175105 2018-2019-2 <Java程序设计>第2周学习总结 Vim操作的一些总结 这些天通过学习,对于vim的操作有了很大的提升,下面我把vim的比较常见的操作方式做了归 ...

  3. POJ 2367 Genealogical tree 拓扑排序入门题

    Genealogical tree Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8003   Accepted: 5184 ...

  4. handsontable合并项mergeCells应用及扩展

    由于我这个项目主要是配置多表头信息,主要使用了handsontabel合并项功能. 但是,在该功能使用过程中发现了一些问题和一些自己根据需要做的一些扩展 $("#topFieldDiv&qu ...

  5. 使用fastjson,gson解析null值的时候键保留

    由于业务需求...所以查阅资料,总结如下: 使用gson实现方法:只需要把new Gson()改为: new GsonBuilder().serializeNulls().create(); 就可以了 ...

  6. ss客户端的使用

    这里假设读者已经搭建了ss服务.教程 客户端安装 客户端可以通过GitHub上搜索,这里就不写太详细了,避免文章被禁掉. 比如对于mac的用户,可以选择这个 客户端配置 点击程序图标以展开菜单栏 服务 ...

  7. AndroidStudio怎样导入library项目开源库 - 转

    https://jingyan.baidu.com/article/1974b2898917aff4b1f77415.html

  8. 20155339 Exp8 Web基础

    Exp8 Web基础 基础问题回答 (1)什么是表单 表单在网页中主要负责数据采集功能. 一个表单有三个基本组成部分: 表单标签,这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方 ...

  9. 在sourceinsight中添加快速注释 Ctrl+/

    1.搜索文件:utils.em(C:\Program Files (x86)\Source Insight 3)2.用sourceinsight打开文件:utils.em3.在文件末尾添加下面代码 m ...

  10. CS299笔记:广义线性模型

    指数分布族 我们称一类分布属于指数分布族(exponential family distribution),如果它的分布函数可以写成以下的形式: \[ \begin{equation} p(y;\et ...