首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

有没有办法在eclipse中使用方法提取类?

在 Eclipse 中,重构是一个非常强大的功能,可以帮助你提高代码的可读性和可维护性。方法提取(Extract Method)和类提取(Extract Class)是两种常见的重构操作。虽然 Eclipse 直接支持方法提取,但类提取需要一些手动步骤。以下是如何在 Eclipse 中进行这两种重构操作的详细步骤。

方法提取(Extract Method)

方法提取是将代码块提取到一个新的方法中,以提高代码的可读性和重用性。Eclipse 提供了内置的工具来执行这一操作。

步骤:

  1. 选择代码块:在编辑器中选择你想要提取为新方法的代码块。
  2. 右键点击:右键点击选中的代码块。
  3. 选择重构:在上下文菜单中选择 Refactor > Extract Method...
  4. 命名新方法:在弹出的对话框中输入新方法的名称。
  5. 完成:点击 OK,Eclipse 会自动生成新方法并替换原来的代码块。

类提取(Extract Class)

类提取是将一组相关的字段和方法提取到一个新的类中,以提高代码的模块化和可维护性。Eclipse 没有直接的“Extract Class”功能,但你可以通过以下步骤手动完成这一操作。

步骤:

  1. 创建新类:在项目中创建一个新的类。
    • 右键点击项目或包,选择 New > Class
    • 输入新类的名称并点击 Finish
  2. 移动字段和方法:将相关的字段和方法从原类移动到新类。
    • 复制或剪切你想要移动的字段和方法。
    • 粘贴到新类中。
  3. 更新引用:在原类中创建新类的实例,并更新所有引用。
    • 在原类中添加新类的实例变量。
    • 更新原类中的方法调用,以使用新类的实例。

示例:

假设你有一个 Person 类,其中包含一些与地址相关的字段和方法。你想将这些字段和方法提取到一个新的 Address 类中。

原始 Person 类:

代码语言:javascript
复制
public class Person {
    private String name;
    private String street;
    private String city;
    private String zipCode;

    public Person(String name, String street, String city, String zipCode) {
        this.name = name;
        this.street = street;
        this.city = city;
        this.zipCode = zipCode;
    }

    public void printAddress() {
        System.out.println(street + ", " + city + ", " + zipCode);
    }

    // 其他方法
}

步骤 1:创建 Address 类:

代码语言:javascript
复制
public class Address {
    private String street;
    private String city;
    private String zipCode;

    public Address(String street, String city, String zipCode) {
        this.street = street;
        this.city = city;
        this.zipCode = zipCode;
    }

    public void printAddress() {
        System.out.println(street + ", " + city + ", " + zipCode);
    }

    // 其他方法
}

步骤 2:更新 Person 类:

代码语言:javascript
复制
public class Person {
    private String name;
    private Address address;

    public Person(String name, Address address) {
        this.name = name;
        this.address = address;
    }

    public void printAddress() {
        address.printAddress();
    }

    // 其他方法
}

步骤 3:更新引用:

代码语言:javascript
复制
public class Main {
    public static void main(String[] args) {
        Address address = new Address("123 Main St", "Springfield", "12345");
        Person person = new Person("John Doe", address);
        person.printAddress();
    }
}
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • eclipse:WindowBuilder开发时为SWTJFace引入JavaDoc和源码

    因为安装WindowBuilder时是不包含SWT/JFace待第三库的JavaDoc的(SWing是JDK自带的,有源码支持),导致开发过程要了解相关的的说明就比较麻烦。...在下载的zip包,如下图找到org.eclipse.platform.doc.isv_xxxx.jar,把它单独提取出来。这就是eclipse所有插件的JavaDoc包。 ?...Eclipse SDK还包括了所有eclipse 插件的源码,所以如果你想查看源码也是可以的, 还以SWT为例,如下图eclipse SDK的zip包中找到swt对应的源码包(名字包含source...将它单独提取出来, 然后如下图设置源码位置, ? ? 设置好之后,点击SWT的任意一个,就可以查看源码了: ?...如下图,${eclipse安装目录}/plugins下就可以找到org.eclipse.platform.doc.isv_xxxx.jar,还是比方法二方便,不用从Eclipse SDK zip中提取

    1.2K10

    IDEA 神器入坑指南!17 个常用快捷键奉上!

    我前几年写过一个 Android Studio 的快捷键教程,发表 CSDN 上,最近有小伙伴看我讲 Spring Boot 视频,IDEA 用的还比较溜,问我有没有整理好的快捷键,我一般就直接把当时写的...大家安装办法很多,这个应该不用我多说,大伙都有办法搞定。...不知道大家有没有在工作遇到突然停电的问题,我以前遇到过一次,幸好当时使用的是 IDEA,损失不大。 项目目录 这个可能是很多初次接触 IDEA 的小伙伴最不习惯的地方了。...Ctrl+Q 查看代码提示及内容,这个说起来并没有 Eclipse 方便,Eclipse 中将光标放在名或者方法名上就会出现 doc,但是 IDEA 需要按下 Ctrl+q 才会出现。...Ctrl+B 查看的定义,也可以像 Eclipse 一样,按下 Ctrl 再鼠标左键单击。 Ctrl+F12 这个可以列出的所有方法。 SHIFT+F6 变量或者名重命名。

    63730

    IDEA 神器入坑指南!17 个常用快捷键奉上!

    我前几年写过一个 Android Studio 的快捷键教程,发表 CSDN 上,最近有小伙伴看我讲 Spring Boot 视频,IDEA 用的还比较溜,问我有没有整理好的快捷键,我一般就直接把当时写的...大家安装办法很多,这个应该不用我多说,大伙都有办法搞定。...不知道大家有没有在工作遇到突然停电的问题,我以前遇到过一次,幸好当时使用的是 IDEA,损失不大。 项目目录 这个可能是很多初次接触 IDEA 的小伙伴最不习惯的地方了。...Ctrl+Q 查看代码提示及内容,这个说起来并没有 Eclipse 方便,Eclipse 中将光标放在名或者方法名上就会出现 doc,但是 IDEA 需要按下 Ctrl+q 才会出现。...Ctrl+B 查看的定义,也可以像 Eclipse 一样,按下 Ctrl 再鼠标左键单击。 Ctrl+F12 这个可以列出的所有方法。 SHIFT+F6 变量或者名重命名。

    93241

    IDEA 神器入坑指南!17 个常用快捷键奉上!

    我前几年写过一个 Android Studio 的快捷键教程,发表 CSDN 上,最近有小伙伴看我讲 Spring Boot 视频,IDEA 用的还比较溜,问我有没有整理好的快捷键,我一般就直接把当时写的...大家安装办法很多,这个应该不用我多说,大伙都有办法搞定。...不知道大家有没有在工作遇到突然停电的问题,我以前遇到过一次,幸好当时使用的是 IDEA,损失不大。 项目目录 这个可能是很多初次接触 IDEA 的小伙伴最不习惯的地方了。...Ctrl+Q 查看代码提示及内容,这个说起来并没有 Eclipse 方便,Eclipse 中将光标放在名或者方法名上就会出现 doc,但是 IDEA 需要按下 Ctrl+q 才会出现。...Ctrl+B 查看的定义,也可以像 Eclipse 一样,按下 Ctrl 再鼠标左键单击。 Ctrl+F12 这个可以列出的所有方法。 SHIFT+F6 变量或者名重命名。

    66940

    为什么选择 Intellij IDEA 作为日常开发工具

    毕竟 Eclipse 已经足够强大,可以满足日常开发的需求,何必再花时间再去学习其他工具那。刚开始改变是困难的。但是没办法,公司强制使用,不得不去了解去使用。... IDEA ,你无需这般做。只要你将光标放置放入参数列表,暂停一会,IDEA 就会帮你智能提示。 如果并不想等待一会,也可以,方法内使用 ctrl +P 也可以快速出现提示框。 ?...我们可以按两下 shift,弹出的窗口输入名,就可以找到。 ? 这个功能不仅可以找,也可以用于找文件等。 还有的时候我们可能只记得的某个关键字,那上面的方法就无效。...重构功能还可以快速提取方法。 ? 其他 插件 IDEA 安装时就会集成很多官方插件,增加对其他技术,语言的支持。...还有一点就是 IDEA 没有类似 Eclipse 的 workspace 的概念,无法做到一个 IDEA 工程打开多个项目。这是刚从 Eclipse 转过来同学困惑的地方。

    53020

    看图说话用Eclipse写C++

    检查“About Eclipse”对话框里的“installation details”有没有就知道了。 ? ? 然后就是配置Test的命令: ? ?...7) 代码重构工具:改名、提取子函数等 ?...Eclipse提供了大量重构功能,让我们修改代码结构的时候,变得非常轻松,最常用的就是“Rename”,你可以用来修改名、文件名、方法名、变量名……而且你只要修改一次,Eclispe会在整个项目的源代码中找到对应的修改...另外如就“提取函数”,就是切分大函数的优秀工具。 8) 简单展示Eclipse里面运行调试 你可以代码任何一行前面双击鼠标,设置一个断点,IDE上会有个小蓝点表示: ?...然后你命令行终端输入命令./eclipse,就可以windows上显式拉! ?

    2.1K40

    Intellij Idea非常6的10个姿势!

    1、智能IDE 自动提示你可能要定义的变量及的类型。 Maven dependency自动提示本地已经有的依赖。 或者方法显示具体的参数名称。...CTRL + P 显示所有的或者方法的同名的类型,废弃的还划线了。 ALT + ENTER 可以补全调用方法返回的类型。 2、重构 CTRL + ALT + P 提取写死的参数到方法参数。...7、快速补全分号 CTRL + SHIFT + ENTER 在当前行任何地方可以快速末尾生成分号; 8、快速查找内容 CTRL + SHIFT + F 可以快速查找文件的内容并显示。...按两个SHIFT,输入文件夹名,可以快速跳转到具体的文件夹。 9、结构图 查看一个的结构图。 10、查看字节码 查看一个的字节码。...然而,Intellij Idea也有好多不如Eclipse的地方,下篇文章继续细数。。 你还知道哪些6的姿势,求赐教,分享给大家吧,欢迎在下面留言。 看完有没有收获? 分享到朋友圈给更多的人吧。

    80740

    为什么选择 Intellij IDEA 作为日常开发工具

    毕竟 Eclipse 已经足够强大,可以满足日常开发的需求,何必再花时间再去学习其他工具那。刚开始改变是困难的。但是没办法,公司强制使用,不得不去了解去使用。... IDEA ,你无需这般做。只要你将光标放置放入参数列表,暂停一会,IDEA 就会帮你智能提示。 如果并不想等待一会,也可以,方法内使用 ctrl +P 也可以快速出现提示框。 ?...我们可以按两下 shift,弹出的窗口输入名,就可以找到。 ? 这个功能不仅可以找,也可以用于找文件等。 还有的时候我们可能只记得的某个关键字,那上面的方法就无效。...重构功能还可以快速提取方法。 ? 其他 插件 IDEA 安装时就会集成很多官方插件,增加对其他技术,语言的支持。...还有一点就是 IDEA 没有类似 Eclipse 的 workspace 的概念,无法做到一个 IDEA 工程打开多个项目。这是刚从 Eclipse 转过来同学困惑的地方。

    85220

    Redis 缓存 + Spring 的集成示例 (不错的bolg)

    解决办法是使用自定义缓存策略,对于同一业务(同一业务逻辑处理的方法,哪怕是集群/分布式系统),生成的 key 始终一致,对于不同业务则不一致: [java] view plain copy...笔者建议:缓存方法的 @Cacheable 最好使用方法名,避免不同的方法的 @Cacheable 值一致,然后再配以以上缓存策略。 6....缓存的验证 6.1 缓存的验证 为了确定每个缓存方法到底有没有走缓存,我们打开了 MyBatis 的 SQL 日志输出,并且为了演示清楚,我们还清空了测试用 Redis 数据库。...Eclipse 控制台输出如下: ? 说明这一次请求没有命中缓存,走的是 db 查询。JMeter 再次请求,Eclipse 控制台输出: ?...参考下图"provinceCities 方法 Redis 的缓存情况"。

    44720

    axis2开发webservice(二)

    工欲善其事,必先利其器 我们选择axis2来生成服务端和客户端 首先安装myeclipse或者eclipse的axis2插件如果使用其它的工具可以自己查找有没有更好的工具。 1.      ...$ECLIPSE_HOME\eclipse\links目录下增加文件axis-eclipse-plugin.link 写入path= $ECLIPSE_HOME\eclipse\plugins (千万不要直接复制...重新启动myeclipse,file->new->other即可看到Axis2 Wizards,至此,axis2插件安装成功!!(GXGX) 5.      ...-3.1.jar"文件到Axis2_Codegen_Wizard_1.3.0的lib目录,同时修改Axis2_Codegen_Wizard_1.3.0下的plugin.xml文件,...: eclipse –clear 当然也可以下载更新一点的版本,如果在安装插件的过程遇到问题,上边已经提供了解决方案,如果仍然不能解决,可以再到网上查一下,我用上边的办法已经成功解决了,而且正常的生成代码没有问题

    1K60

    eclipse自动提示设置方法和优化(去除空格自动补全)

    而JavaScript自动提示代码的配置由于输入框输入字符长度的限制,需要先导出配置文件,再对其进行修改,然后重新导入修改后的配置文件,具体操作步骤如下: 我们点击File–Export…弹出的界面点击...,点击Import–Preferences,然后Next,From preference file选择刚修改完的epf文件,然后点击Finish即可导入。...但是,我们输入代码的时候,有时候给变量命名,它也会出现自动提示,按等号、空格之后会自动补全代码,这让人头疼, 如何去除自动提示变量或者取消空格自动补全代码,我们可以参考:https://www.cnblogs.com.../download/fordawn/9718949 非会员可用百度网盘下载: 链接:https://pan.baidu.com/s/13lHjBzUGGTRRPQIGlQaDaQ 提取码:xjzq...使用方法: 下载org.eclipse.jface.text_3.11.2.v20161113-1700.jar 包 然后打开eclipse安装目录,搜索org.eclipse.jface.text,找到你原来

    1.2K20
    领券