为了账号安全,请及时绑定邮箱和手机立即绑定

Eclipse的隐藏功能

/ 猿问

Eclipse的隐藏功能

qq_花开花谢_0 2019-08-23 10:47:25

Eclipse的隐藏功能好吧,这可能是一个蹩脚的问题,但每个人都以不同的方式使用这些东西。什么是这个IDE的最佳节省时间。 

查看完整描述

3 回答

?
收到一只叮咚

不要忘记CtrlShiftL,它会显示所有键盘快捷键组合的列表(以防您忘记此处列出的任何组合)。

查看完整回答
反对 回复 2019-08-23
?
慕尼黑的夜晚无繁华

Ctrl-2的东西

似乎没有人提到Ctrl-2 L(分配给新的局部变量)和Ctrl-2 F(分配给新的字段),这些改变了我编写代码的方式。

以前,我在打字,说(|是光标位置):

Display display = new |

然后我按下Ctrl-Space来完成构造函数调用。现在我输入:

new Display()|

然后按Ctrl-2 L,结果是:

Display display = new Display()|

这真的加快了速度。(Ctrl-2 F执行相同操作,但分配给新字段而不是新变量。)

另一个好的快捷方式是Ctrl-2 R:在文件中重命名。当重命名像局部变量这样的东西时,它比重命名重构(Alt-Shift-R)快得多。

实际上我去了Keys自定义首选项页面并为Ctrl-2-something分配了各种其他快速修复程序。例如,我现在按Ctrl-2 J分割/加入变量声明,Ctrl-2 C将内部类提取到顶层,Ctrl-2 T为函数添加抛出声明等。有大量可分配的快速修复,选择你喜欢的并将它们分配给Ctrl-2快捷方式。

模板

我的“npe”模板中的另一个最爱,定义为:

if (${arg:localVar} == null)
    throw new ${exception:link(NullPointerException,IllegalArgumentException)}("${arg:localVar} is null");

这允许我在每个函数的开头快速添加空参数检查(特别是那些仅将参数保存到字段中或将其添加到集合中的函数,尤其是构造函数),这对于早期检测错误非常有用。

请访问www.tarantsov.com/eclipse/templates/查看更多有用的模板。我不会在这里列出所有这些,因为有很多,因为我经常添加新的。

完成

一些代码完成技巧:

  • 在另一个答案中提到的驼峰案例支持:输入cTM,获取currentTimeMillis

  • 默认构造函数:在没有默认构造函数的类声明中按下Ctrl-Space,第一个选择就是创建一个

  • 重载:在类声明中开始输入你可以重载的方法的名称,Ctrl-Space,选择一个

  • getter / setter创建:输入“get”,Ctrl-Space,选择要创建的getter; 与“是”和“设定”相同

分配到新字段

这就是我添加字段的方式。

  1. 如果还没有构造函数,请添加一个。(在类声明中的任何位置按Ctrl-Space,选择第一个提案。)

  2. 添加参数(|是光标位置):

    public class MyClass {
        public MyClass(int something|) {
        }}
  3. 按Ctrl-1,选择“分配给新字段”。你得到:

    public class MyClass {
        private final Object something;
        public MyClass(Object something) {
            this.something = something;
        }}
  4. 如果合适,添加空指针检查(参见上面的“npe”模板):

    public class MyClass {
        private final Object something;
        public MyClass(Object something) {
            npe|
            this.something = something;
        }}

    点击Ctrl-Space,得到:

    public class MyClass {
        private final Object something;
        public MyClass(Object something) {
            if (something == null)
                throw new NullPointerException("something is null");
            this.something = something;
        }}

节省时间!


查看完整回答
反对 回复 2019-08-23
?
慕后森

ctrl-shift-r及其伙伴ctrl-shift-t分别打开资源或类型。资源包括打开项目中的所有文件(包括非java文件),类型包括项目中或项目中包含的库中的Java类型。


查看完整回答
反对 回复 2019-08-23

添加回答

回复

举报

0/150
提交
取消
意见反馈 邀请有奖 帮助中心 APP下载
官方微信