好吧,这可能是一个蹩脚的问题,但每个人使用这些东西的方式都不同。这个 IDE 有哪些最好的节省时间的方法。
汤姆
73 回答
Don't forget Ctrl+Shift+L, which displays a list of all the keyboard shortcut combinations (just in case you forget any of those listed here).
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 向函数添加 throws 声明等。有很多可分配的快速修复,选择你最喜欢的并将它们分配给 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;与“is”和“set”相同</li>
分配给新字段
这就是我添加字段的方式。
如果您还没有构造函数,请添加一个。(在类声明中的任意位置按 Ctrl-Space,选择第一个提议。)
添加一个参数(| 是光标位置):
public class MyClass { public MyClass(int something|) { } }
按 Ctrl-1,选择“分配给新字段”。你得到:
public class MyClass { private final Object something; public MyClass(Object something) { this.something = something; } }
如果合适,添加一个空指针检查(参见上面的“npe”模板):
public class MyClass { private final Object something; public MyClass(Object something) { npe| this.something = something; } }
按 Ctrl-空格键,得到:
public class MyClass { private final Object something; public MyClass(Object something) { if (something == null) throw new NullPointerException("something is null"); this.something = something; } }
一个伟大的节省时间!
ctrl-shift-r 及其伙伴 ctrl-shift-t 分别打开资源或类型。Resources 包括您打开的项目中的所有文件(包括非 java 文件),并且 types 包括您的项目中或项目中包含的库中的 java 类型。
Crtl+1是我的最爱。红色曲线的快速修复。
它也位于编辑菜单 -> 快速修复中。
Ctrl++Shift来O组织导入,这将很好地格式化它们,删除不需要的导入,并添加缺少的导入。
Ctrl-J 开始增量查找。
点击 Ctrl-J,然后开始输入。使用向上/向下查找您键入的内容的上一个/下一个实例。
Ctrl-Shift-J 向后搜索。
键入“syso”,然后按Ctrl+Space将其展开为 System.out.println()。
Tres 得心应手。
CTRL+3显示任何菜单命令的预先输入列表。
- CTRL-SHIFT-g :查找光标下的方法或字段的用法,对于理解代码绝对必要
- CTRL-F6 :在打开的编辑器窗口列表之间导航,如果您只键入一次并松开,您将切换回上一个编辑器窗口,连续执行此操作是来回跳转的好方法
- CTRL-t :在类或方法上将显示类型层次结构,对于查找接口方法的实现非常有用,例如
单击方法声明中的返回类型会突出显示该方法的所有退出点。
例如:
1: public void foo()
2: {
3: somecode();
4: if ( blah ) return;
5:
6: bar();
7: }
单击void将突出显示第 4 行的return和第 7 行的 close }。
更新:它甚至适用于 try{} catch 块。如果您将光标放在 catch 块中的异常上,eclipse 将突出显示可能引发该异常的可能方法。
代码完成支持 CamelCase,例如,键入CWAR
将显示ClassWithAReallyLongName
. 开始使用此功能,您将永远不会再输入另一个长类名。
(从另一个答案复制的部分,因为我认为只有一个提示/提示的答案最适合轮询)
Alt-Up Arrow 将当前选择向上移动一行,Alt-Down Arrow 将其向下移动。我也一直使用 Alt-Shift-Up/Down Arrow。Ctrl-K 和 Ctrl-Shift-K 非常方便,查找当前选择的下一个/上一个出现(或最后一个查找,如果没有选择)。
可以选择将左大括号和分号自动放置在“正确”位置。您必须启用此功能 - 选择 Window/Preferences 并在搜索框中键入“brace” - 应该很容易找到(这台计算机上没有 eclipse)。效果:
- 在该行的任意位置键入分号会将其放置在该行的末尾(如 word/openoffice: Backspace,如果您想将其放在原始位置)
- 当您刚刚在另一对大括号内时键入一个左大括号会将其放在该行的末尾 - 就像在这个例子中一样
(“|”是光标):
if(i==0|)
现在输入“{”将导致
if(i==0) {|
Hippie expand/Word Complete,受 Emacs 启发的 afaik:将根据该文件中的其他单词自动完成任何编辑器中的任何单词。在 Java 代码、xml 文件中,随处可见的字符串文字内部自动完成。
Alt+/
Alt-Shift-R代表rename,而不是重构。重构是一个更笼统的术语(由本书定义)。
尽管如此,它是我最喜欢的重构之一。其他包括:
当我不记得(或不想输入)方法的结果类型时,提取局部变量特别有用。假设您JdbcTemplate createJdbcTemplate()
的类中有一个方法,请编写如下代码:
void someQuery() {
createJdbcTemplate()
}
选择表达式createJdbcTemplate()
,单击 Alt-Shift-L,键入变量名称并按 Enter。
void someQuery() {
JdbcTemplate myTemplate = createJdbcTemplate();
}
当然,Ctrl+Q转到最后一个编辑位置。在被电话、老板或其他人打断后非常有用。
CTRL+ D- 删除当前行
Alt++Shift箭头Up进行升级选择。Alt++Shift则Down相反。
Alt+Up或Alt+Down移动线条
Ctrl++ Shift:M将类的静态方法或静态属性引用更改为静态导入。
前
import X;
...
X.callSomething();
后
import static X.callSomething;
...
callSomething();
还没有人提到最好的。单击类或方法名称,然后按Ctrl+ T。
你得到一个快速的类型层次结构。对于类名,您可以看到整个类层次结构。对于方法名称,您将获得显示超类和子类的层次结构,该方法的实现与抽象提及或未提及该方法的类区分开来。
当您在一个抽象方法声明中并且很快想要查看它的实现位置时,这是巨大的。
F3一直是我的最爱,打开所选项目的定义。
Ctrl++有一个有趣的功能,您可以在搜索时只使用类中的大写骆驼字母(例如键入 CWAR 将显示 ClassWithAReallyLongName 的结果)Shift。R
Alt+ Shift+ W> 包资源管理器让浏览大型项目时更轻松。
Eclipse 允许您根据发生异常的位置设置断点。
您可以通过“j!”访问该选项 替代文本 http://help.eclipse.org/stable/topic/org.eclipse.jdt.doc.user/images/org.eclipse.jdt.debug.ui/elcl16/exc_catch.png调试窗口中的图标。
替代文字 http://blogs.bytecode.com.au/glen/2007/04/06/images/2007/AddExceptionWindow.png
官方帮助主题“添加 Java 异常断点”对此有更多说明。
- Uncaught Exception 选项是在未捕获位置抛出与断点相同类型的异常时暂停执行。
- Caught Exception 选项是在捕获位置抛出与断点相同类型的异常时暂停执行。
- 不要忘记此异常的子类上的异常断点暂停:
在遇到异常类型的子类时暂停执行。
例如,如果一个异常断点RuntimeException
被配置为在子类上挂起,它也会被NullPointerException
.
一个非键盘快捷键技巧是在您的 Team->Synchronise 视图中使用提交集来组织您的更改,然后再提交。
将更改集设置为默认值,您对文件所做的所有更改都将放在该集中,从而可以轻松查看您在处理特定缺陷/功能时所做的更改,以及您在测试时所做的其他更改等。
CTRL+SPACE,任何地方,任何地方。
生成 getter 和 setter。
使用字段创建构造函数
提取方法...
重构->重命名
CTRL+O 用于快速大纲。CTRL+O+CTRL+O 用于继承的大纲。
F4 显示类型层次结构
打开调用层次结构以显示调用方法的位置。
CTRL+SHIFT+T 打开一个 Java 类型
CTRL+SHIFT+R 打开任何资源。
ALT + 向左或向右可在文档中的编辑位置前进或后退(轻松导航)
如果您知道要执行很多方法,则覆盖/实施方法(否则,CTRL+SPACE 一次选择一个会更好。
重构->提取接口
重构->上拉
重构->下推
CTRL+SHIFT+O 用于组织导入(当输入通用类名称如 Map 时,按 CTRL+SPACE 然后选择适当的类将直接为您导入)。
CTRL+SHIFT+F 用于格式化(尽管 Eclipse 的内置格式化程序对于长行代码可能有点脑残)
编辑:哦,是的,一些调试:
F5:进入(告诉我细节!)
F6:跳过(我相信你,进入下一部分......)
F7:走出去(我以为我在乎这个方法,但事实证明我不在乎,让我离开这里!)
F8:继续(直到到达下一个断点)
CTRL+SHIFT+I:检查表达式。CTRL+SHIFT+I+CTRL+SHIFT+I:在被检查的表达式上创建一个监视表达式。
条件断点:右键单击断点,您可以设置一个触发其中断程序执行的条件(上下文辅助,使用 Ctrl+Space,在此处可用!)
F11 - 调试上次启动(应用程序)
CTRL+F11 - 运行上次启动(应用程序)
Ctrl+ Alt+UP或Ctrl+ Alt+DOWN复制行
Ctrl++Alt在H方法上获取它的调用层次结构。快速查看从哪里调用它的方法。
Alt++重构和重命名Shift。R
Here is my collection of the most useful keyboard shortcuts for Eclipse 3:
Eclipse 3 Favorite Keyboard Shortcuts.
by -=MaGGuS=-
Navigate:
• Ctrl + Shift + L – Shows useful keyboard shortcuts in popup window
• Ctrl + H – Search.
• Ctrl + K – Goes to next search match in a single file. Shift + Ctrl + K – goes to previous match.
• F3 - Goes to ‘declaration’ of something. Same as Ctrl + Click.
• Ctrl + Shift + G - Use this on a method name or variable. It will search for references in the code (all the code) to that item.
• Ctrl + O – Shows outline view of the current class or interface.
• Ctrl + T – Shows class hierarchy of the current class or interface. F4 – shows the same in separate tab.
• Ctrl + Shift + T - Open Type. Search for any type globally in the workspace.
• Ctrl + Shift + R – Open Resource. Search for any file inside workspace.
• Ctrl + J – Incremental search. Similar to the search in firefox. It shows you results as you type. Shift + Ctrl +J - Reverse incremental search.
• Ctrl + Q – Goes to the last edit location.
• Ctrl + Left|Right – Go Back/Forward in history.
• Ctrl + L – Go to line number.
• Ctrl + E – This will give you a list of all the source code windows that are currently open. You can arrow up or down on the items to go to a tab.
• Ctrl +PgUp|PgDown – Cycles through editor tabs.
• Ctrl + Shift + Up|Down - Bounces you up and down through the methods in the source code.
• Ctrl + F7 – Switches between panes (views).
• Ctrl + ,|. – Go to the previous/next error. Great in combination with Ctrl + 1.
• Ctrl + 1 on an error – Brings up suggestions for fixing the error. The suggestions can be clicked.
• Ctrl + F4 – Close one source window.
Edit:
• Ctrl + Space – Auto-completion.
• Ctrl + / – Toggle comment selected lines.
• Ctrl + Shift + /|\ – Block comment/uncomment selected lines.
• Ctrl + Shift + F – Quickly ‘formats’ your java code based on your preferences set up under Window –> Preferences.
• Ctrl + I – Correct indentations.
• Alt + Up|Down – move the highlighted code up/down one line. If nothing is selected, selects the current line.
• Ctrl + D – Delete row.
• Alt + Shift + Up|Down|Left|Right – select increasing semantic units.
• Ctrl + Shift + O – Organize Imports.
• Alt + Shift + S – Brings up “Source” menu.
o Shift + Alt + S, R – Generate getter/setter.
o Shift + Alt + S, O – Generate constructor using fields.
o Shift + Alt + S, C – Generate constructor from superclass.
• Alt + Shift + T – Brings up “Refactor” menu.
• Alt + Shift + J – Insert javadoc comment.
• F2 – Display javadoc popup for current item. Shift + F2 – Display javadoc in external browser.
Run/Debug:
• F11 / Ctrl + F11 – Execute/debug.
• Ctrl + Shift +B – Toggle breakpoint.
• When paused: F5 – Step into, F6 – Step over, F7 – Step out, F8 – Resume.
• Ctrl + F2 – Terminate.
EOF
Ctrl+ Shift+L将显示所有当前可用的键盘快捷键
不是那么隐藏,但 IMO 是最好的把戏。
假设默认设置(并且您还没有添加新的片段)
突出显示(或选择)文本(字符串或变量)...按 Ctrl+空格。点击结束+回车。“sysout”片段被触发,它将选择作为其参数包装起来。
例如。
"hello world!"
becomes
System.out.println("hello world!");
我非常喜欢它,以至于我在手动调试期间为 Android 的 Toast 和 Log.i() 实现了一个类似的代码段。
隐藏的宝石是条件断点。对于跳过部分循环、如果某些内容为空或满足某个值等时暂停等非常Breakpoint Properties
有用...只需右键单击断点--> Enable Condition
。文本框中甚至还有代码辅助!
Ctrl-Alt-h 打开所选方法的调用层次结构。
在大型代码库或未知代码库上非常有用
Ctrl+和Ctrl+。将文本光标移动到源中的下一个和上一个错误或警告(红色或黄色曲线)。如果您在重构或粘贴的深度中处理大量脏或损坏的代码,这将非常有用。结合Ctrl+1建议修复,您可以快速修复代码,而无需将手移到鼠标上。
事实上,您几乎不需要将手指从 Ctrl 上移开...
保存动作摇滚。在那里,您可以组织导入 (Ctrl+Shift+o) 和代码格式 (CTRL + SHIFT + f)。除此之外,我喜欢 ALT + Shift + R 进行重构。
不过,我最喜欢的是插件:它们可能会导致您使用更多时间,但大多数时候它们会提供质量(我知道这是主观的)
- 代码覆盖率 (ECLEMMA)
- 源静态分析(PMD)
- 字节码静态分析(FindBugs)
- 检查样式
- SpringIDE。
然后你开始使用强制性的源代码控制插件和 maven 2 插件。
摇滚吧!
ctrl + O 是一个弹出大纲视图,可让您开始输入以过滤名称
Ctrl + F3 的作用类似,但它可以根据光标所在的位置打开其他类型的轮廓。
打开保存操作以清理您的代码,每次保存时它都会自动格式化和导入优化。要轻松访问此选项,请选择“Windows|Preferences”开始,在过滤器框中键入“Save Act”并打开该选项。
在新的 3.4 版本中,打开编辑器窗口顶部的“Breadcrumb trail”。为此有一个新的工具栏按钮。
Ctrl + Shift + P 查找匹配的大括号。在处理长代码时非常有用。
If you want to put a System.out.println("anything"); to your code you can simply do as follows: Only write ", then mark the "" and press Crtl-Space Up-Arrow and enter (you should land on "sysout").
Voila, there it is :)
您可以按住 CTRL 键单击几乎任何类型、字段、方法或变量,eclipse 将带您进入该项目的声明:
IE:
- 在局部变量上 - 将您带到函数中的声明语句
- 在成员变量上 - 将您带到声明成员的类文件中的定义(或父类,如果它没有在子类中被覆盖
- on a class - 将您带到该类的类文件的顶部
您还可以将 CTRL 悬停在类型上以调出查找实现的选项。如果您正在使用接口并想查看哪些类实现了该接口,这将很有用。它还可以查看哪些超类和子类可能实现/覆盖某个功能。
怎么样:
Ctrl-PgUp 和 Ctrl-PgDn 在编辑器中浏览打开的文件(包括溢出部分,如果你 Ctrl-PgDn 一直向右)。
One combination to rules them all.
CTL+SHFT+L
Get the list of all these "hidden" features.
Ctrl + H 搜索/替换整个工作区或项目。
Ctrl+f 然后勾选“正则表达式”复选框。从此,您可以使用正则表达式进行搜索,但更强大的是,您可以在替换字符串中包含组匹配项($1、$2 等,或 $0 表示整个匹配项)。
ctrl-alt-up/down 向上(或向下)复制一行。接下来是 alt-up/down 通常比复制粘贴快得多
不知道它的键盘快捷键,但在方法中选择一个局部变量,然后右键单击。重构下是“将局部变量转换为字段”。在某些场合非常有用。只希望有一条捷径!
Java 编辑器中的 Ctrl-Shift-Up 或 Down 跳转到该方向上最近的方法或字段声明。
如果这是重复的,我很抱歉,但我认为我没有看到这里提到的这个,我浏览了所有的帖子:
单词补全:
Alt + /
是 Ctrl+Space 的一个非常好的替代品。它并不能完全取代 Ctrl+Space,但要快得多。并且不要害怕多次按下它,它会不断循环选择可能的选项。
alt+shift+z - 激活“环绕”子菜单。当必须用 try catch 块包围时很方便。
如果您使用 F3 键导航到方法的源代码,您通常会浪费时间切换到接口而不是直接转到实现类(对于 DAO,Service,通常只有一个。 .. 例如)
使用 Ctrl+Mouse 指针指向代码的一种方法,您将能够在直接转到直接转到实现(类)或声明(接口)之间进行选择
此处有关此提示的更多信息:
http://www.ibm.com/developerworks/opensource/library/os-eclipse-galnav/index.html
这仅在 Galileo 中可用,您也可以使用 Ctrl + T 。
调试时,我发现“显示”视图非常有用。它允许您键入代码(使用自动完成)并允许您运行/显示您编写的任何内容的结果。
试试看!
Ctrl+Shift+Enter 将当前行下移一位并开始在其上方输入。
Ctrl+Shift+X 将当前选择大写,Ctrl-Shift-Y 将其更改为小写。
Ctrl+。自动完成当前单词。这适用于变量和字符串(例如,这对于数组键来说是一个巨大的节省时间)
快速辅助:Ctrl + 2,然后是 F(分配给字段)、L(分配给局部变量)和 R(在文件中重命名)
最后编辑位置:Ctrl+Q
查看这篇文章:http ://dmy999.com/article/29/using-eclipse-efficiently
ALT+Shift+X + T
这会将您当前的文件作为单元测试运行。
Ctrl-1 to convert if to conditional expression and back, split an assignment or join it back or do other such small manipulations. There is a list of these in the help.
CTRL-MouseClick(左)作为 F3 进入声明的替代方法。
双击左括号旁边将突出显示所有代码,直到右括号,反之亦然。
Shift-F2 转到任何方法的 Javadoc。
经常使用它。对于库,您需要配置位置,但对于标准类,它们是由 Eclipse 预定义的
取决于节省时间对您意味着什么...
在注释中添加 TODO 和 FIXME 会自动将任务添加到 Eclipse 中的任务列表中。因此,如果您想返回某个代码,例如您正在调试并需要进行一些研究,您可以...
FIXME 表示紧急,表示红色!在任务窗口
TODO是正常的紧迫
//FIXME: This accidentally deletes user accounts
user.account().delete();
//TODO: Add some validation before assigning everyone as admin
user.setPrivilege("Admin");
然后会自动构建 setter/getter。如果您正在创建 bean 或其他东西,这很棒。假设您已经声明了一个类,例如:
public class SomeBean {
private static int FIRST_VALUE = 0;
private static int SECOND_VALUE = 1;
...
private static int THOUSANDTH_VALUE = 1000;
}
您可以创建所有变量,然后在编辑器中右键单击,转到 Source,然后选择 Generate Setters & Getters。这将自动为您创建它们。
ctrl+d 删除当前行
alt+up/down 向上或向下移动所选文本的当前行或块
ctrl+alt+up/down 向上或向下复制/复制所选文本的当前行或块
ctrl+alt+c SVN 提交(带有颠覆性)
ctrl+alt+u SVN更新(带有颠覆性)
我最近将 alt-enter 映射到与 ctrl-1 相同的命令。它只是更容易到达。
我也使用 alt+shift+x &t 一堆,但我不喜欢集成测试运行器的工作方式。
安装MouseFeed Eclipse 插件。安装后,每当您单击与快捷方式关联的按钮或菜单项时,它都会显示带有键盘快捷方式的弹出窗口。
Ctrl-F6 在打开的编辑器窗口中循环焦点(使用 Ctrl-Shift-F6 向后循环)
Ctrl-F7 在 Eclipse 视图中循环焦点
Ctrl-F8 循环 Eclipse 透视图
CTRL + b:在c++下构建项目
CTRL + SHIFT + f: 格式化你的代码 (c++)
eclipse 帮助包含很多有用的资源。只需搜索“提示和技巧”。特别是我发现“提示和技巧(JDT)”非常有用。
如果您使用 Ant 构建项目,您可以为“运行上次启动的外部工具”分配一个快捷方式,例如 Ctrl+Enter,它将重复您的上次构建。它比标准的 Alt+Shift+X,Q 容易得多,它还有助于解决最新 Eclipse 中无法在项目中找到 ant 构建文件的错误。
当然,如果您找不到您正在寻找的绑定,或者不喜欢当前的绑定 Window -> Preferences -> General -> Keys 将允许您更改、添加和删除组合键的映射。
我很惊讶没有人提到 Eclipse 中可用的 Emacs 键绑定设置。这是我最喜欢的小功能之一;它允许我从 Emacs 过渡到 Eclipse,而无需对我的导航首选项进行一些调整。
Windows->首选项->常规->键->方案。
当然,所有这些快捷方式都可以在菜单中使用,但是当您处于“区域”时,谁有时间这样做。
我喜欢代码热交换。
在比较/补丁设置中启用“忽略空白”可以节省实时!
在
Windows/首选项/常规/键
定义
Alt + C
对于 SVN 提交
Alt + U
用于 SVN 更新
Shift + Ctrl + N
对于新类对话框。
经常按 CTRL+S。它是 CTRL+1 最好的朋友。