eclipse快捷键操作

来源:互联网 发布:血腥拼图 程序员 编辑:程序博客网 时间:2024/04/20 00:58

入门

Alt+/ 

平时我们输入类实例后按"."就会有个自动补全的提示,其实可以在任何地方按这个快捷键都可以弹出类似的提示,变量名补全、成员变量选择、自动取名 等等……。如果闲自己按这个键太麻烦或是对于所有东西都不想自己输入的懒人(比如@SeanLionheart),可以在Windows - Preferences - Java - Editor - Content Assist 中的 Auto activition triggers for Java一栏中填入abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_.这样就使得你在输入 所有英文大小写及下划线和点时都会有自动提示了(就像IntelliJ一样)

 

解决Eclipse alt+/不出来提示的问题

 

1. 检查windows ——preferences ——java ——editor —— content assist - advanced,在右上方有一行“select the proposal kinds contained in the 'default' content assist list” 下面,勾选Java Prolosals 复选框

2. 检查 alt+/的key是否是content assist

做完以后记得重启Eclipse

PS:我的就是alt+/ 被word completion占用了,超不好用的东西- -

Ctrl+1

这个也是非常好用的快捷键,和IntelliJ中的Alt+Enter有点像,可以智能处理当前行的任意错误(出现红线或黄线)。注意,是当前行,光标不需要在红线上,养成不将光标移动到红线上就按Ctrl+1的习惯对未来的全键盘编码有好处

Ctrl+F

弹出查找,无需多说。值得注意的是查找时Find框中的内容总是你当前选中的文本,所以可以利用这一点来简化手动输入文本或是复制粘贴的过程。另外建议勾选Wrap Search和Incremental两个勾选项,前者使得我们可以方便的在文件中的任意地方发起查找,后者使得在手工输入过程中即使没有输入完整也可以自动跳转(有点代码提示的味道)

Ctrl+K | Ctrl+Shift+K

快速查找,前者是向后查找,后者是向前查找。这个快捷键比Ctrl+F的好处是不需要打开查找框。如果当前已经选中了一段文本则直接按照当前选中的文本进行查找,非常方便。

Ctrl+J | Ctrl+Shift+J

更快速的增量查找,当你按完了以后会发现啥也没发生,不要担心,你只管输入想查找的字符就行了,它们会显示在Eclipse底部的状态条上,并且会根据输入进行快速增量查找。我很喜欢这个查找,因为它不会挡住编辑区域,呵呵

Ctrl+Shift+F

自动格式化当前文件代码。代码格式可以在Windows - Preferences - Java - Code Style - Formatter 中进行配置

Ctrl+I

将当前行的缩进弄好

Ctrl+Shift+T

全Workspace范围查找类或接口(Type),这在类很多的时候或是希望查找一些开源项目的类时尤为有用

Ctrl+Shift+R

全Workspace范围查找文件(Resource),这在文件很多的时候尤为有用

Ctrl+O

快速定位类中的成员位置,这个在大类中定位尤为有用,当然这并不代表鼓励编写大类

Ctrl+T

查看一个类的层级结构,在阅读代码时,查找当前类的子类时特别有用在方法上使用时则是显示下级复写过此方法的类有哪些

Shift+Enter | Ctrl+Shift+Enter

前者在当前行下面加一行同时光标移动到下行行首,比直接按Enter键的好处是可以在当前行任意位置按而不会将后面的字符切换到下一行去;后者则是在当前行上面加一行。

Ctrl+D

删除当前行或是选中行

Ctrl+/ | Ctrl+Shift+/

前者将当前行注释掉(行首加上//) ,后者将当前选中的内容注释掉(两端打上/* ... */)

Ctrl+Shift+O

将当前类中所有没有导入的类都导入进来,这使得我们可以先只管写代码,等到出现多个未引入的类时再按一次此快捷键一次性导入多个,它同时也可以去除unused imports

Ctrl+F11 / F11

前者为运行上次运行的内容, 后者为Debug方式运行上次运行的内容

 

Eclipse全键盘编码攻略之二——天下无鼠

 

当前文件内操作

当前文件内部的操作显然是我们平时最多的操作,因此这个也是做到全键盘编码的关键,以下按照定位、选中、其他三个分类来分别介绍

1. 光标定位快捷键

文件内操作首先要解决光标定位,我们的鼠标大多数时候是在Eclipse编辑框中定位光标。以下几个快捷键虽然定位不一定有鼠标方便,但相比右手往返于键盘和鼠标间所花费的时间,效率还是有不少提升

Ctrl+Left/Right

向左或向右跳跃一个单词,这是解决横向光标定位速度问题最主要的快捷键!(特别对于喜欢写超过80个字符一行代码的人来说)需要配合使用同样用于同行光标定位的Home/End键

Ctrl+Home/End

到达文件底部,没啥好说的,大众型的快捷键,几乎所有的Windows下文本编辑器都支持这个键。解决光标纵向定位问题

Ctrl+Shift+Up/Down

向上或是向下跳一个方法,解决光标纵向定位速度问题的主要快捷键!需要配合Ctrl+O来使用以快速跨越多个方法定位。(这个键在xml文件编辑中也能用)

Ctrl+O

上一篇中已经介绍过,用于快速定位到文件中的方法

Ctrl+Up/Down

当希望光标不移动而屏幕移动时使用,以调整视野

Ctrl+F/J

上一篇中已经介绍过,这里再次提出来说是因为这个其实是文件内定位非常重要的一个快捷键

Ctrl+Shift+P

跳转到和当前括号(大中小括号均可)匹配的另一半括号处,用于快速找到“另一半”^_^

 

2. 选中快捷键

选中操作也是我们鼠标最常用的操作之一,下面的简单几个快捷键可以满足选中的需求而无需鼠标

Ctrl+Shift+Left/Right

前面刚好说到Ctrl+Left/Right是跳跃一个单词,那么这个快捷键自然就是选中一个单词了,这个是最重要的选中快捷键之一!另一个是Alt+Shift+Up/Left/Right/Down

Alt+Shift+Up/Left/Right/Down

很多人喜欢用鼠标双击的功能来选中“某一小段”内容。但是当全部用了键盘之后怎么办呢?这里Alt+Shift+Up和双击功能差不多,但更加强大!你可以在一个方法中的某一行开始尝试开始按Alt+Shift+Up,慢慢体会它的规则吧!相应的Alt+Shift+Down就是将刚刚的选中步骤一步步后退。至于Left和Right可以自己尝试体会

Shift+Up/Down

这也算快捷键?!这几乎是个用的不能再多的快捷键了,不过这里我提出来说主要是提醒一句:很多人选中一段代码时总是喜欢从一行头复制到一行尾,这样看起来更整齐而且可以保证选中后粘贴的格式,但Eclipse里其实有很多配合快捷键都不需要我们选中的那么完整,例如,希望将当前行和当前行+1两行向前缩进,只需在当前行任意位置按Shift+Down,再按Tab即可,如果先跳转到行首速度就慢了

 

3. 其他文件内快捷键

Ctrl+Backspace/Delete

这是一个编辑型的快捷键,有时候我们希望删掉同行的一大段内容(例如一个10个字母组成的单词的变量名),那么要么按 Ctrl+Shift+Left/Right选中,然后再按Backspace/Delete键,有没有快捷的方式呢?当然了,按 Ctrl+Backspace/Delete就是向前或是向后删除一个单词

F2

我们经常喜欢使用鼠标悬停在有编译错误或是警告的时候查看警告内容,或是查看一个类或方法的Javadoc,那么没有鼠标了之后这个问题如何解决呢?答案就是F2

 

 

文件间跳转

鼠标除了文件内操作以外,还有很多操作是在文件间跳转,如点击顶部来切换文件,或是点击左侧的Project Explorer来打开文件,下面这些快捷键可以帮助你不再需要鼠标来执行文件间切换操作

Ctrl+PageUp/PageDown

最容易理解的文件间切换快捷键,当打开多个文件时,它可以在相邻文件窗口间进行切换

Ctrl+F6

最有用的文件窗口间切换快捷键!在最后两个切换到的文件间切换,喜欢用Alt+Tab的朋友可以很容易理解。非常好用,可惜被Eclipse赋予了一个这么难按的位置(在IDEA里这个键是Ctrl+Tab)

Alt+Left/Right

按照文件打开历史进行窗口切换,这个也是非常重要的快捷键,它的好处有两个:1. 它定位的是位置而不是文件,因此它可以在同一个文件中进行定位切换,这点在阅读代码时尤为有用!例如F3键跳转后在同一个文件中,希望回到刚刚跳过来的位置 2.即使历史上的文件窗口已经被关闭了它仍然会打开!(PS. 这个快捷键在浏览器里也是历史切换的快捷键)

Ctrl+E

当文件打开过多以至于顶部tab显示不完整时,我们经常会点击最右侧的下拉按钮来选中未被显示在顶部tab中但是已经打开的文件。现在不需要鼠标,按Ctrl+E即可打开,然后可以输入期望的名称进行过滤,如果前面的几个切换快捷键太难记,只记这个也可以

F3

上篇中介绍过,用于模拟Ctrl+鼠标点击动作

Ctrl+Shift+T/R

在上一篇中已经说过,用于查找类型和资源的两个快捷键,这两个快捷键也是出场率极高的两个快捷键

Ctrl+Q

回到最后一次编辑(改动)的位置,如果记得住自己最后改的哪里也可以考虑这个快捷键

 

 

 

View之间跳转

Ctrl+F7

这个快捷键与Ctrl+F6差不多,只是来回切换于不同的View之间(也是Alt+Tab的style)。举 个例子:有很多同学不喜欢Ctrl+Shift+T/R方式来查找类或是文件,更喜欢在左侧的Project Explorer中选择文件,那么从编辑框切换到explorer框的动作就可以使用这个快捷键来实现(目录树上操作左右键用于收起/展开树形结构)。这 个键也同样可以用于切换到Console或是JUnit Result的View中

Alt+Shift+W

从某个视图中显示当前文件,可以按着尝试下,这在希望查看当前编辑文件的所在位置时特别有用

Alt+Shift+Q, ?

打开某个视图,这个可以从顶部菜单的Window - Show View中查到

Eclipse全键盘编码攻略之三——辟邪剑谱

Source系列,用于生成代码

以下所有快捷键基本都以按Alt+Shift+S起头,之后在配合一个按键来触发。有一些Source相关的快捷键已经在前面几篇介绍过了

Alt+Shift+S, R

这个几乎是在传统J2EE开发中用的最多的键了。用于为当前类的成员变量生成 Getter/Setter,进入后焦点停留在属性选择框中,可以按上下键选择属性,空格键勾选,左右键展开,按回车确认(等同于点击OK按钮)。如果希 望全部生成,可以按Alt+A,如果仅生成所有属性的Setter(例如开发Struts2的Action)则按Alt+L,如果仅生成Getter则按 Alt+G。如果按过以上三个快捷键后,焦点会停留在按钮上,此时按回车键会无效(变成了触发按钮点击事件),此时按几次Shift+Tab让焦点回到属 性勾选框中,再按回车即可。

Alt+Shift+S, V

用于复写父类方法,自动生成复写父类的空方法。选择框操作方法同上。

Alt+Shift+S, S 和 Alt+Shift+S, H

分别用于根据成员变量生成toString()方法和hashCode()/equals()方 法。其中toString方法是以"classname[prop1=value1, prop2=value2, ...]"格式输出当前类,而hashCode和equals则是按照Effiective Java中所描述的方式生成的,具体大家可以自己生成一个看看就明白了(不过生成的hashCode/equals方法的代码中单行if后木有大括号,因 此有代码洁癖的同学,比如我,可能得手工再改改,呵呵)

Alt+Shift+S, O 和 Alt+Shift+S, C

前者用于根据成员变量生成构造器。也是出场率非常高的一个快捷键。不过如果在使用类似Hibernate等ORM的项目中可能会用的相对较少。后者根据父类构造器的状况来生成一个构造器。相对用的较少一点

Alt+Shift+S, M

非常有意思的一个快捷键,用于生成成员变量的代理方法。在希望使用包装器模式或是代理模式时特别有用(不用自己去写一堆重复的代码了)

Alt+Shift+S, U

清理代码!可以帮你优化很多当前类的代码内容(当然不是逻辑上的),比如神马去掉不必要的cast啦,神马补上@Override啦,去掉没用的 import啦,之流之流。你还可以自己创建一个profile来决定哪些需要哪些不需要。当然,如果平时写代码比较精益求精的话,这个东东是派不上用场 的啦

 

Refactor系列,用于重构代码相关

记得第一次知道Eclipse的重构功能是4年前,当时有一天看公司的总经理晚上没事儿破解一个混淆过的J2ME小游戏,才知道Eclipse有个重构功能,呵呵。

言归正传,以下是一些可能常用的重构快捷键,Refactor里面还有很多其他的东西,但个人觉得除了以下几个之外平时都会用得很少,(有一些可能是有更好的之前介绍过的替代方案,例如Alt+Shift+L生成本地变量就不如Ctrl+1来得方便):

Alt+Shift+R 和 Ctrl+2, R

两个都是改名键,不同的是,前者会将整个项目中所有用到的地方都给改了,而后者仅仅只会变更文件内部的所有引用。例如,有一个public String getName()方法,在getName上按Alt+Shift+R,输入getUsername回车,那么整个workspace里所有引用了这个 getName方法的地方全部会变成getUsername,是不是灰常方便?哈哈。那Ctrl+2, R又有啥用呢?相比Alt+Shift+R最主要的好处就是速度快,因为不用扫描整个workspace,一般在修改一些local变量或是新的类中的名 称时(还木有外部引用)来使用。所以如果你对自己的机器速度足够有信心,可以总是使用Alt+Shift+R

Alt+Shift+M

抽取一个方法,是重构时常用的一个快捷键。使用方法是,先选中一段代码,然后按Alt+Shift+M,这个时候会弹出一个对话框,问你是否需要将这段代 码抽取为一个方法,其中所有的入口参数出口参数都会自动帮你计算好。如果确认OK则自动生成好代码。不过说实话觉得这个功能不太实用,因为我老是会纠结于 入口参数顺序等问题,最后还得自己改,呵呵

Alt+Shift+T, E 和 Alt+Shift+T, T

前者生成一个接口并使得当前类实现它,接口中会同时生成当前类中指定的方法声明,当前类Override它们。后者则是生成一个父类并使得当前类继承它,同时可以将指定当前类的方法提升到父类中去。

Alt+Shift+T, U 和 Alt+Shift+T, D

前者将一个方法抽取到父类中,后者将一个方法放到子类中。

 

其他

Ctrl+2, L

灰常有用的一个快捷键!用于生成变量的声明。大致使用方式是这样的,例如我们希望创建一个List,那么我们只需要输入 new ArrayList() ,然后按Ctrl+2, L ,系统会自动生成左边的 ArrayList arrayList = ,并且此时光标为选中arrayList变量名状态,此时可以直接输入变量名,然后按tab键切换到声明类型,会列出可能的声明类型(实现类的父类们), 按下选中List回车,最终结果就成了 List mylist = new ArrayList(); 。要用好这个快捷键需要我们改掉一个之前的习惯,就是之前总是先写声明,而现在需要先写实现,忘记声明这回事儿,个中细节,还需自己体会,呵呵

Alt+Shift+Z

生成可以包装用的一些代码,使用方法是先选中一堆代码,然后按Alt+Shift+Z,可以看到有神马try/catch啊,do啊,if啊之类的。使用之后会把之前选择的那些代码包到各自的块里去(例如try/cache之间的block

Alt+Shift+J

生成当前类、方法的javadoc

 

模板

除了以上之外,还有个灰常有用的代码生成武器,那就是模板了。先做个实验:在任意一个方法里,先输入syso,然后按Alt+/,看看发生了神马?然后换 一行,重新输入if,然后按Alt+/,选择第一个按回车,看看发生了神马?这就是模板,它可以为我们节省大量的重复劳动,以加快编码速度,熟练的掌握模 板可以大大提升平时的编码速度

这里有一点要注意的是,模板和普通提示一样,都会一起显示在Alt+/之后的下拉列表中,因此有时候模板很可能不在第一个,可能前面全是一些类或变量名提 示。例如输入f然后按Alt+/第一个是finalize而非for,那么如何快速选中模板呢?答案是再多按一次Alt+/就行了,按两次Alt+/下拉 列表会切换到完全只有模板的模式下。

从哪里获知有些什么可选模板呢?在Eclipse顶部菜单中选择 Window - Show View - Templates 可以将模板的View显示在Eclipse主界面上。而配置的地方则在 Window - Preferences - Java - Editor - Templates

如果懒得自己看的话,我这里列举几个我常用的:try, if, for, fore(foreach), new, sysout, main, Test(JUnit4+), true(javadoc), false(javadoc), null(javadoc)

 


0 0
原创粉丝点击