IDEA代码重构技巧--目录页

1. 小声哔哔

在代码重构和检视过程中,比较常见的是一个类或者方法职责不单一,导致代码有坏味道,这种情况就需要基于函数抽取,迁移来做代码重构,而迁移意味着调用点也需要同步修改,仅靠手动拷贝工作量大且易出错,此时就可以借助IDEA的重构能力。

2. 函数迁移

函数迁移步骤:

  • 步骤一:将函数静态化 Refactor(快捷键:Shift+Ctrl+Alt+t) -> Make Static
  • 步骤二:移动函数(快捷键:F6)
  • 步骤三:进入函数移动的类,实例化方法 Refactor(快捷键:Shift+Ctrl+Alt+t) -> Convert To Instance Method

示例代码:

/*** @author: Coline* @ClassName: ReconsitutionMoveMeth* @Date: 2022/8/20 17:13* @Description: 重构-函数迁移*/
public class ReconsitutionMoveMeth {public void tryMoveMeth() {moveMeth();}/*** 函数迁移步骤:* 步骤一:将函数静态化 Refactor(快捷键:Shift+Ctrl+Alt+t) -> Make Static* 步骤二:移动函数(快捷键:F6)* 步骤三:进入函数移动的类,实例化方法 Refactor(快捷键:Shift+Ctrl+Alt+t) -> Convert To Instance Method*/public void moveMeth() {System.out.println("Move Meth");}
}

2.1. 将函数静态化

鼠标选中函数名,键入Shift+Ctrl+Alt+t,选择Make Static

​​​​​​​

在弹出框右下角选择OK即可(不同IDEA版本可能不一样)

 最后看到方法已经变为静态方法了

2.2. 移动函数

鼠标选中静态函数,键入F6,输入需要迁移到的包和类,如果包或者类不存在会自动创建。

如下图,可以看到方法已经迁移到了上图中填写的包和类中

如下图,之前调用的地方已经发生了修改

2.3. 实例化方法

进入函数移动的类,鼠标选中静态函数,键入Shift+Ctrl+Alt+t,选择Convert To Instance Method。

在弹出框做如下选择,点击Refactor

关注原有调用的地方自动做了new实例的动作

​​​​​​​

IDEA代码重构技巧--迁移相关推荐

  1. IDEA代码重构技巧--抽取类和接口

    IDEA代码重构技巧--目录页 1. 小声哔哔 重构和检视代码过程中,我们有时会碰到由于项目交接或者人员替换导致的代码腐化,比较常见的是类的职责不单一,此时比较好的重构技巧就是按照职责抽取函数或者类, ...

  2. JavaScript代码重构技巧

    JavaScript代码重构技巧 (1)提炼函数 在js开发中,我们大部分时间在与函数打交道,将一段代码独立成函数可以避免出现超大函数.独立出来的函数有利于代码复用.独立出来的函数如果命名良好能够起到 ...

  3. 代码重构技巧宝典,学透本篇就足够了!

    本文来源:http://n5d.net/ma76k 关于重构 为什么要重构 1_代码重构漫画.jpeg 项目在不断演进过程中,代码不停地在堆砌.如果没有人为代码的质量负责,代码总是会往越来越混乱的方向 ...

  4. 【JAVA】代码重构技巧

    简介 重构是持续改进代码的基础.抵制重构将带来技术麻烦:忘记代码片段的功能.创建无法测试的代码等等. 而有了重构,使用单元测试.共享代码以及更可靠的无bug 的代码这些最佳实践就显得简单多了. 鉴于重 ...

  5. 常见代码重构技巧(非常实用)

    点击关注公众号,Java干货及时送达  作者:VectorJin juejin.cn/post/6954378167947624484 关于重构 为什么要重构 1_代码重构漫画.jpeg 项目在不断演 ...

  6. python代码重构技巧_Python代码重构

    代码重构是一件很是辛苦却很是有意义的事情,代码重构的缘由在于:django 一.代码过于冗余.沉余架构 二.代码过于耦合函数 三.代码过于复杂学习 四.接口调用超出三层优化 此次重构主要在于架构问题, ...

  7. 代码重构技巧之重复代码

    在我们项目开发的过程中,有时写着写着顺手了,对于一些业务代码,重复编写,导致后来需要修改的时候,得整个项目到处找这些重复代码,这真是一件糟糕的事. 一.重复代码 定义 重复代码并不是指的完全一模一样的 ...

  8. java编程代码大全_掌握Java编程技巧,代码重构

    代码重构在不改变软件系统外部行为的前提下,改善它的内部结构,通过调整程序代码改善软件的质量.性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性. 代码重构目标 持续纠偏和改进软件设计 随 ...

  9. 代码重构(一):函数重构规则

    [笔记] 以下是通用的代码重构规则 python代码重构技巧看这里:Python重构代码的一些模式 ========================== 重构是项目做到 一定程度后必然要做的事情.代码 ...

最新文章

  1. android闪退日志收集
  2. 智能情绪分析技术_情绪转变令市场再次修正 Justforex:欧元、英镑、日元、黄金技术分析...
  3. 克鲁斯卡尔算法(公交站问题)
  4. http://w3cschool.codecloud.net/python/python-object.html?ref=myread
  5. 外挂编程-动作模拟技术
  6. 第一阶段 03Java的基本数据类型
  7. 周期置换加密算法用c语言实现,古典密码实验报告.doc
  8. java BufferedReader
  9. 下载图片的java工具类_ftputil 下载图片工具类
  10. python函数手册(1)
  11. Word转换成PDF文档怎么转换
  12. UNIX再学习 -- RS485 串口编程
  13. 安卓逆向_2 --- Androidkiller,apktool、dex2jar、jd-gui、jadx反编译工具 的 安装、设置及使用教程...
  14. EXCEL电子表格使用技巧
  15. CSDN的MD编辑器【写作技巧】
  16. 米家蓝牙温湿度计2 换用 LIR2032 充电电池的问题
  17. Gartner发布2021年新兴技术成熟度曲线,三大新兴技术趋势主题
  18. ubuntu 启动、退出 startx界面
  19. .ts 音频文件转换成 .mp3 文件
  20. dvwa brute force(暴力破解)

热门文章

  1. 修复录音笔或其它录音设备损坏的WAV/MP3录音文件或0kb字节文件
  2. matlab求马尔可夫转移矩阵,求马尔科夫模型的转移矩阵_马尔科夫转移矩阵
  3. Windows驱动_文件系统微小过滤驱动之二驱动的安装和加载
  4. 淘宝开放平台物流正则表达式查询
  5. 图形图像处理-之-任意角度的高质量的快速的图像旋转 上篇 纯软件的任意角度的快速旋转
  6. 前端三剑客 React、Angular、Vue.js 比较
  7. 2018年11月 打卡
  8. solidworks遇到错误卸载的提示的解决方法
  9. JDK 8 新特性之接口详解
  10. CSC2021公派出国流程总结---加拿大留学