Eclipse 重构功能的使用与重构快捷键
名称 |
快捷键
|
直译 | 作用范围 |
描述
|
Rename | Alt + Shift + R | 可以对任意变量、类、方法、包名、文件夹进行重新命名,并且所有使用到的地方会统一进行修改。 | ||
Move | Alt + Shift + V | 字段 | 把字段移到其他类、把类移到其他包 |
名称 |
快捷键
|
直译 | 作用范围 |
描述
|
Change Method Signature | Alt + Shift + C | 修改方法签名 | 方法 | 对方法进行操作,可以修改方法名、访问权限、增加删除方法参数、修改参数顺序、添加方法异常 |
Extract Method | Alt + Shift + M | 提取为方法 | 方法 | 任意选中一块代码,自动转换为方法,自动添加参数返回类型。 |
Extract Local Variable | Alt + Shift + L | 提取局部变量 | 字符/数字 | 通常用于表达式,把其中一个抽取为本地的变量,例如3 + 5 抽取为 int i = 3; |
Extract Constant | Ctrl+1 Extract to Constant | 提取常量 | 字符/数字 | 把任意位置的字符串或者数字抽取为一个静态全局常量。所有使用此字符或者数字的也会相应的被替换为使用常量。 |
Inline | Alt + Shift + I | 内联 | 方法 | 把调用此方法的地方直接替换成此方法的内容。选中任意方法才可使用此功能。(有All invocations 与 Only the selected invocation两个选项) |
名称 |
快捷键
|
直译 | 作用范围 |
描述
|
Convert Local Variable to Field | Alt + Shift + K | 局部变量转变为全局变量 | 局部变量 | 把局部变量转变为全部变量,可以重新修改变量名。 |
Convert Anonymous Class to Nested | 匿名类转换为嵌套内部类 | 匿名类 | 可以设置类型,内部包含字段类型等。 | |
Move Type to New File | 移动类到新的文件 | 嵌套类 | 以嵌套类创建一个新的类文件 |
名称 |
快捷键
|
直译 | 作用范围 |
描述
|
Extract Supperclass | 提取父类 | 提取选中字段或方法放置到其父类中(注意提取方法时,先提取其中使用的字段) | ||
Extract Interface | 提取接口 | 类 | 从一个类的方法生成一个接口(仅当前类的方法会变为接口,其他使用此方法的地方不会) | |
Use Supertype Where Possible | 尽可能使用父类型 | 类 | 把选中引用向上转型,变成其父类的引用 | |
Push Down | 下推 | 变量、方法 | 把选中方法从父类移到子类中,父类中响应方法变为抽象方法 | |
Pull Up | 上移 | 变量、方法 | 与Push Down相反,把子类的方法上移到父类中 |
名称 |
快捷键
|
直译 | 作用范围 |
描述
|
Extract Class | 提取为类 | 字段 | 把所有选中字段提到新类中,可以选择新建文件也可以使内部类 | |
Introduce Parameter Object | 引入参数对象 | 方法 | 把方法参数抽取为一个类(避免参数在方法内引用被修改异常) |
名称 |
快捷键
|
直译 | 作用范围 |
描述
|
Introduce Indirection | 让其他类可调用当前类某方法 | |||
Introduce Factory | 引用工厂 | 构造函数 | 用方法返回一个对象 | |
Introduce Parameter | 引入参数 | 将字段抽取为方法中的参数 | ||
Encapsulate Filed | 封装字段 | 为字段提供setter/getter方法 |
名称 |
快捷键
|
直译 | 作用范围 |
描述
|
Generalize Declared Type | 把非原始对象字段(或方法参数)替换为其父类型。 | |||
Infer Generic Type Arguments | 为原始形式的那些类型推测恰当的泛型类型 |
名称 |
快捷键
|
直译 | 作用范围 |
描述
|
Migrate JAR File | ||||
Create Script | ||||
Apply Script | ||||
History |
Eclipse 重构功能的使用与重构快捷键的更多相关文章
- Eclipse 中的重构功能
Eclipse 中的重构功能使其成为了一个现代的 Java 集成开发环境 (IDE),而不再是一个普通的文本编辑器.使用重构,您可以轻松更改您的代码,而不必担心对别处造成破坏.有了重构,您可以只关注于 ...
- eclipse 重构功能。
1. Rename Rename重构的功能就是重命名Java元素.虽然可以通过手动修改文件的文件名或其它Java元素的名称,但这种方式不会更新与此Java元素相关联的引用,用户必须手动查找和此Java ...
- 【转】Xcode重构功能怎么用我全告诉你
原文网址:http://www.cocoachina.com/ios/20160127/15097.html 你会经常需要重构你的代码,让它有更好的结构,可读性或者提高可维护性.Xcode作为IDE其 ...
- [转]Xcode的重构功能
Xcode提供了以下几个重构功能: Rename Extract Create Superclass Move Up Move Down Encapsulate 在菜单栏中的位置如下图: 在代码区里直 ...
- 【重构】AndroidStudio中代码重构菜单Refactor功能详解
代码重构几乎是每个程序员在软件开发中必须要不断去做的事情,以此来不断提高代码的质量.Android Stido(以下简称AS)以其强大的功能,成为当下Android开发工程师最受欢迎的开发工具,也是A ...
- Eclipse中10个最有用的快捷键组合
Eclipse中10个最有用的快捷键组合 (转) 一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合.通过这些组合可以更加容易的浏览源代码,使得整体的开发效率和质量得到提升. ...
- Eclipse中10个最有用的快捷键组合(转)
Eclipse中10个最有用的快捷键组合 一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合.通过这些组合可以更加容易的浏览源代码,使得整体的开发效率和质量得到提升. ...
- Eclipse中10个最有用的快捷键组合(转)
Eclipse中10个最有用的快捷键组合 1. ctrl+shift+r:打开资源 这可能是所有快捷键组合中最省时间的了.这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask ...
- Android Studio中有没有类似于Eclipse中的ctrl+2+L的快捷键? \Android Studio快捷键之代码提示
问:Android Studio中有没有类似于Eclipse中的ctrl+2+L的快捷键? 答:有,as中的快捷键是Ctrl+Alt+V AndroidStudio和Eclipse常用快捷键对比 功能 ...
随机推荐
- Android 6.0 中的 Wifi 连接
Android 6.0 中的 Wifi 连接 这几天在写一个软件,结果被其中的 wifi 连接问题困扰了 3 天. 先描述下需求: usb 接口接了一根 usb2serial,通过这个接口接收命令 当 ...
- Saver 保存与读取
tensorflow 框架下的Saver 功能,用以保存和读取运算数据 Saver 保存数据 代码 import tensorflow as tf # Save to file #remember t ...
- UVA 11270 轮廓线
题目链接: http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=33787 题意: 用1*2或2*1的长条把n*m方格铺满的方案数. ...
- 0517 SCRUM团队项目4.0
题目 1.准备看板.形式参考图4.2.任务认领,并把认领人标注在看板上的任务标签上.先由个人主动领任务,PM根据具体情况进行任务的平衡.然后每个人都着手实现自己的任务.3.为了团队合作愉快进展顺利,请 ...
- WebForm与MVC模式优缺点
Asp.net Web开发方式,分为两种: 1. WebForm开发 2. Asp.Net MVC开发 MVC是微软对外公布的第一个开源的表示层框架,MVC目的不是取代WebForm开发,只是web开 ...
- 第二周:PSP&进度条
PSP: 一.词频统计改进 1.表格: C类型 C内容 S开始时间 E结束时间 I时间间隔 T净时间(mins) 预计花费时间(hrs) 学习 <构建之法>.Java 8:46 1 ...
- Android定位测试(深坑)
问题:我们是一个海外app,市场部去马来西亚打开那边的市场,发现了一个问题,就是我们的app定位有问题,还是成都的定位,主要原因是在马来西亚使用这个app,请求中带的经纬度参数是成都的,导致服务器返回 ...
- 第179天:javascript中replace使用总结
ECMAScript提供了replace()方法.这个方法接收两个参数,第一个参数可以是一个RegExp对象或者一个字符串,第二个参数可以是一个字符串或者一个函数.现在我们来详细讲解可能出现的几种情况 ...
- 【EF】Entity Framework Core 命名约定
本文翻译自<Entity Framework Core: Naming Convention>,由于水平有限,故无法保证翻译完全正确,欢迎指出错误.谢谢! 注意:我使用的是 Entity ...
- 【Python】Python网络编程
python内置封装了很多常见的网络协议的库,因此python成为了一个强大的网络编程工具,这里是对python的网络方面编程的一个简单描述. urllib 和 urllib2模块 urllib 和u ...