精通 Eclipse V3.4,第 3 部分

JDT 文本编辑器提示和技巧

Comments

系列内容:

此内容是该系列 # 部分中的第 # 部分: 精通 Eclipse V3.4,第 3 部分

敬请期待该系列的后续内容。

此内容是该系列的一部分:精通 Eclipse V3.4,第 3 部分

敬请期待该系列的后续内容。

精通 Eclipse” 系列的这一部分将详细介绍 Eclipse 的 Java 编辑器。开发人员将在这个编辑器上花费大量的时间,因此了解其高级功能可以显著提高您的生产率。

Organize Imports 命令

Organize Imports 命令将添加缺失的导入并将现有的导入声明组织到 Java 文件中。您可以通过使用 Ctrl+Shift+O 组合键在当前编辑器中运行这条命令。要将 Organize Imports 命令应用到整个项目中,请右键单击项目浏览器中的项目并选择 Source > Organize Imports

假定您在 Java 文件中的某个位置使用了一个类,但是您忘记导入该类:Organize Imports 可以为您自动导入该类。如果该命令不确定类的位置,将打开一个窗口并显示一列可以进行选择的选项。例如,如果在代码中使用 List 类,当运行 Organize Imports 命令时,则可能弹出一个窗口,要求您在 java.util.Listjavax.swing.List 之间选择,因为命令自己无法选择。

Organize Imports 还将常用的 .* 样式的导入声明分为独立的导入语句。例如,假定您的文件中有一个诸如 import java.util.* 之类的导入语句,并且仅使用来自该包的 List 类。Organize Imports 命令将把初始的 import 语句替换为 import java.util.List

选取字符串的一部分

通常,您需要在两个字符串之间连接一个变量。绝大多数情况下,这些字符串属于一条单一语句,并且很容易犯下在字符串两侧遗漏空格的错误。例如,您可能会得到 You have5seconds left 之类的输出,而非 You have 5 seconds left。Eclipse 将防止您掉入这个陷阱:

  1. 在代码内像往常一样键入字符串:
    static String getMsg(int time)
    {
        return "You have 5 seconds left";
    }
  2. 选择需要用变量替换的字符串部分 — 在本例中为数字 5。
  3. Ctrl+1 组合键并选择 Pick out selected part of String
    图 1. 选择 Pick out selected part of String
    选择 Pick out selected part of String
    选择 Pick out selected part of String

    结果显示在图 2 中。
    图 2. 选取选中的字符串部分
    图 2. 选取选中的字符串部分
    图 2. 选取选中的字符串部分
  4. 用变量替换中间的字符串。
    图 3. 用变量替换字符串
    图 3. 用变量替换字符串
    图 3. 用变量替换字符串

现在可以确保您不会犯空格错误。

自动创建局部变量

您经常需要调用方法并将其值赋给新局部变量。使用 Eclipse 可以让您轻松地执行此操作,并且您绝不希望再使用旧方法执行这样的操作:

  1. 键入方法调用:
    public void foo()
    {
        getMsg(3);
    }
  2. 不需要移动插入标记,按 Ctrl+1 组合键并选择 Assign statement to a new local variable(参见图 4)。如果需要使用字段而非局部变量,可以选择 Assign statement to a new field
    图 4. 选择 Assign statement to a new local variable
    图 4. 选择 Assign statement to a new local variable
    图 4. 选择 Assign statement to a new local variable

    系统将为您创建与该方法的返回值类型相同的新局部变量。系统将给它提供相应的名称,但是您可以根据需要更改名称(参见图 5)。按 Enter 键接受该名称。
    图 5. 您可以更改变量的名称
    图 5. 您可以更改变量的名称

快速概要

概览视图十分有用,因为它可以让您轻松地跳到 Java 文件中的方法。但是此视图将占用大量宝贵的屏幕区域。

快速概要视图将提供概览视图的所有功能,而无需占据屏幕区域。要从编辑器内激活快速概要视图,请按 Ctrl+O 组合键。系统将显示一个弹出式窗口,其中显示文件的概要。

图 6. 按 Ctrl+O 组合键打开快速概要视图
图 6. 按 Ctrl-O 组合键打开快速概要视图

您可以使用箭头键浏览所有方法。要更加快速地跳到某种方法,可以键入其名称。列表将开始过滤,只为您显示以所键入字符为开头的方法。

图 7. 开始输入并且概要视图开始过滤
图 7. 开始输入并且概要视图开始过滤

快速打开类型(Quick Open Type)

Open Type 窗口对于 Package Explorer 的作用与快速概要对于 Outline 视图的作用相同。

在编辑器中按 Ctrl+Shift+T 组合键。将弹出一个窗口,您可以在其中键入工作空间中的所有类的名称(参见图 8)。单击 OK,并且将在编辑器中立即打开该类。无需在 Package Explorer 中浏览树即可打开所需类。

图 8. 使用 Open Type 窗口可以立即跳到工作空间中的任意类
图 8. 使用 Open Type 窗口可以立即跳到工作空间中的任意类
图 8. 使用 Open Type 窗口可以立即跳到工作空间中的任意类

在键入类名以过滤文本框下方的列表时,可以使用通配符。例如,键入 *Exception 以显示所有 Exception 类。

面包屑栏(Breadcrumb bar)

面包屑栏是在 Eclipse V3.4 中引入的。它位于编辑器窗口的顶部,刚好位于选项卡下方,并且提供了 Package Explorer 和 Outline 视图的功能(参见图 9)。如果它尚未启用,则可以按 Alt+Shift+B 组合键启用。

图 9. 面包屑栏
图 9. 面包屑栏
图 9. 面包屑栏

面包屑栏将指出当前编辑器与当前工作空间之间的相对路径。单击一个黑色箭头将为您显示元素的内容,从而允许您通过面包屑栏浏览整个工作空间。

图 10. 面包屑栏允许您通过该栏浏览工作空间
面包屑栏允许您通过该栏浏览工作空间
面包屑栏允许您通过该栏浏览工作空间

快速 Javadoc

您是否希望了解某种方法的用途?Eclipse 可以轻松地向您展示所有方法的 Javadoc。只需将光标停到该方法上,即可打开 Javadoc 窗口。

图 11. 将光标停到任意 Java 元素上将显示相关 Javadoc —— 在本例中为 indexOf 方法
图 11. 将光标停到任意 Java 元素上将显示相关 Javadoc —— 在本例中为 indexOf 方法
图 11. 将光标停到任意 Java 元素上将显示相关 Javadoc —— 在本例中为 indexOf 方法

但是此功能还不止于此。把光标移到弹出窗口中,该窗口将变为可滚动窗口(参见图 12)。位于底部的按钮允许您在外部窗口中打开 Javadoc 并转到正在查看其 Javadoc 的元素声明。

图 12. 把光标移到弹出窗口中可使其变为可滚动窗口
图 12:把光标移到弹出窗口中可使其变为可滚动窗口
图 12:把光标移到弹出窗口中可使其变为可滚动窗口

自动格式化

您可以使用 Eclipse 的自动格式化功能自动设定文档的格式。右键单击 Package Explorer 中的文档并选择 Source > Format。您甚至可以通过在 Package Explorer 中右键单击项目(而非单个文件)来设置整个项目的格式。

要配置 Eclipse 格式化代码的方式,需执行以下操作:

  1. 选择 Window > Preferences,然后浏览到 Java > Code Style > Formatter
    图 13. 编辑 Eclipse 格式化文档的方法
    图 13. 编辑 Eclipse 格式化文档的方法
    图 13. 编辑 Eclipse 格式化文档的方法
  2. 单击 New 并在打开的窗口中输入名称以创建新的格式化配置文件。
  3. 在创建配置文件后,单击 Edit 开始编辑该配置文件的格式化首选项。
  4. 打开的 Profile 窗口包含配置源代码格式的详细设置(参见图 14)。您可以配置所有格式,包括源代码中的各个元素所需的缩进,以及导入组之间显示的空行数目。
    图 14. Eclipse 允许详细配置格式设置
    图 14. Eclipse 允许详细配置格式设置
    图 14. Eclipse 允许详细配置格式设置
  5. 单击 OK 以关闭 Profile 窗口。再次单击 OK 关闭 Preferences ??口。

注意,新格式设置将在下一次 设置源代码格式时应用。

保存操作

保存文档时将触发保存操作。在保存文档时,保存操作将允许自动执行格式化代码及组织导入之类的操作。要配置保存操作,需执行以下操作:

  1. 选择 Window > Preferences > Java > Editor > Save Actions 以打开 Preferences 窗口。
    图 15. 在 Preferences 窗口中配置 Save Actions
    图 15. 在 Preferences 窗口中配置 Save Actions
    图 15. 在 Preferences 窗口中配置 Save Actions
  2. 选中 Perform the selected actions on save 复选框。
  3. 选择在保存时需要执行的所有操作。单击 Configure 以查看更多操作。
    图 16. 单击 Configure 显示更多操作
    图 16. 单击 Configure 显示更多操作
    图 16. 单击 Configure 显示更多操作

    例如,您可以选中 Code Style 选项卡中的 Convert for loops to enhanced 复选框以在每次保存文档时将所有 for 循环转换为 Java 5 样式的增强循环。

Save Actions 可以为您节省大量时间。例如,您可以采用任意方法输入代码,而无需担心格式问题,并且在每次保存文档时,系统仍将自动地设定代码的格式。

代码折叠

按照字面的意思,代码折叠将允许您折叠代码片段,这样编辑器不会变得过于混乱。要折叠一个方法,请单击左侧标尺中的 - 图标。

图 17. 单击 - 符号将折叠代码
图 17. 单击 - 符号将折叠代码

在折叠代码后,- 图标将变为 +,您可以再次单击 + 以展开方法。如果在方法处于折叠状态时把光标停在 + 号上,弹出窗口将显示方法中的文本。

图 18. 把光标停在 + 图标上将显示折叠后的代码的预览
图 18. 把光标停在 + 图标上将显示折叠后的代码的预览

生成 hashCode()equals()

Eclipse 允许您自动生成类的 hashCode()equals() 方法,因此您无需亲自执行此操作。这样,您可以在编写这些方法时避免犯错误。要生成方法,需执行以下操作:

  1. 选择 Source > Generate hashCode() and equals()
  2. 打开的窗口将询问您在类中调用 hashCode()equals() 方法时需要包括哪些字段。
    图 19. 选择在其上生成 hashCode()equals() 方法的字段
    图 19. 选择在其上生成 hashCode() 和 equals() 方法的字段
    图 19. 选择在其上生成 hashCode() 和 equals() 方法的字段
  3. 选择所需字段并单击 OK。系统将为您生成 equals()hashcode() 方法。

概览标尺

概览标尺被嵌到编辑器窗口的右侧。它将允许您在编辑器中即时查看需要注意的所有错误、警告或其他标记。如果编辑器中有任何错误,则该栏的右上角将显示一个红方块。

图 20. 概览标尺中的红方块表示编辑器中有一个或多个错误
图 20. 概览标尺中的红方块表示编辑器中有一个或多个错误

另一方面,黄方块表示编辑器中存在警告。

图 21. 概览标尺表示编辑器中存在警告
图 21. 概览标尺表示编辑器中存在警告

使用概览标尺,您可以立即跳到编辑器中的任意一个错误/警告。只要编辑器中出现错误/警告,标尺将显示小的黄色/红色标记(参见图 22)。如果单击此标记,编辑器将立即跳到代码中的相应位置。

图 22. 显示两个警告和一个 TODO 注释的概览标尺
图 22. 显示两个警告和一个 TODO 注释的概览标尺

概览标尺还可以表示编辑器中其他需要注意的位置。例如,如果有 TODO 注释,或者如果执行搜索,概览标尺中将标记出相关行;单击标记将把您带到相应行中。

如名称所示,概览标尺将使您可以浏览编辑器中需要注意的行。在编写 Java 代码时,您会发现它是一个非常宝贵的工具。

结束语

本文已经介绍了 Eclipse 中有关 Java 编辑器的一些高级功能。您已经看到如何自动生成代码的常用部分。您还了解了如何关闭 Eclipse 视图但仍然使用其功能,这都要感谢 Eclipse 编辑器提供的各种快捷键。本文还讨论了 Java 编辑器中可以显著提高生产率的其他功能。


相关主题


评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Open source
ArticleID=368666
ArticleTitle=精通 Eclipse V3.4,第 3 部分: JDT 文本编辑器提示和技巧
publish-date=02092009