Idea相关


快捷键


快速返回

macOS 的 IntelliJ IDEA 中,当你通过 Command + 鼠标左键 点击一个方法跳转到其定义后,可以使用以下快捷键快速返回到之前的位置:

  • 后退(返回原位置)Command + [
  • 前进(如果误退过多,想返回新位置)Command + ]

拷贝方法名、包名、类名

类似于这样:com.example.package.ClassName#methodName 。过程如下:

  1. 定位到方法

    • 打开项目,找到包含目标方法的类文件。
    • 将光标移动到方法名上。
  2. 复制方法信息

    • 方法名:直接选中方法名(如 methodName)并复制。
    • 包名和类名
      • 右键点击方法名,选择 Copy / Paste SpecialCopy Reference(或使用快捷键 Ctrl+Shift+C)。
      • 这会将全限定名(包名.类名#方法名)复制到剪贴板,例如:
        com.example.package.ClassName#methodName
        

Debug

在 IntelliJ IDEA 中,调试(Debug)是一项非常重要的功能,帮助开发者逐步执行代码并观察程序运行状态。

  • resume:继续运行程序到下一个断点。
  • pause:临时停止程序,查看当前状态。
  • step sver:执行当前行但不进入方法内部。
  • step into:执行当前行并进入方法内部。
  • step out:跳出当前方法,回到调用处。

1. Resume Program(继续执行程序)

  • 含义:让程序从暂停状态继续执行,直到遇到下一个断点(Breakpoint)或程序自然结束。
  • 图标:▶(绿色三角形)。
  • 快捷键
    • Windows/Linux:F9
    • macOS:F9 +
  • 使用场景:当你暂停调试后,想让程序恢复正常运行,直到下一个断点处再次暂停。

2. Pause Program(暂停程序)

  • 含义:强制暂停程序的执行,以便在当前代码位置查看变量值、堆栈信息等。
  • 图标:⏸(两个竖线)。
  • 快捷键
    • Windows/Linux:F9(与 Resume 共用快捷键,需结合上下文判断)
    • macOS:Cmd + F2
  • 使用场景:在程序运行过程中临时暂停,快速检查当前状态(例如发现程序行为异常时)。

3. Step Over(逐过程,跳过方法内部)

  • 含义:执行当前代码行,并跳转到下一行代码,但不进入当前行调用的方法内部。
  • 图标:→(箭头向右)。
  • 快捷键
    • Windows/Linux:F8
    • macOS:F8
  • 使用场景:当你想快速执行当前行代码(例如调用某个方法),但暂时不需要查看方法内部逻辑时使用。

4. Step Into(逐行进入方法内部)

  • 含义:执行当前代码行,并进入当前行调用的方法内部,逐行调试该方法。
  • 图标:↓(向下箭头)。
  • 快捷键
    • Windows/Linux:F7
    • macOS:F7
  • 使用场景:当你需要深入查看某个方法的具体执行过程(例如检查方法内部的变量或逻辑)时使用。

5. Step Out(跳出当前方法)

  • 含义:结束当前方法的调试,直接跳转回调用该方法的位置的下一行代码。
  • 图标:↑(向上箭头)。
  • 快捷键
    • Windows/Linux:Shift + F8
    • macOS:Shift + F8
  • 使用场景:当你在调试某个方法内部时,发现不需要继续深入,想快速回到方法调用处时使用。

美化

  • Atom Material Icons:美化图标
  • Material Theme UI:主题美化,个人使用Material Deep Ocean
  • 设置背景图片:Setting -> Apperance & Behavior -> Apperance -> BACKGROUND IMAGE

注释

File and Code Temeplates

前往 Setting -> Editor -> File and Code Temeplates

HTML File


<!--
 @desc #[[$Description$]]#
 @author 鹤童 (<a href="mailto:chenwenpeng.cwp@alibaba-inc.com">发送邮件</a>)
 @date ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
-->

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>#[[$Title$]]#</title>
</head>
<body>
#[[$END$]]#
</body>
</html>

Class


#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
/**
 * @desc ${description}
 * @author 鹤童 (<a href="mailto:chenwenpeng.cwp@alibaba-inc.com">发送邮件</a>)
 * @date ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
 */
public class ${NAME} {
}

Interface


#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
/**
 * @desc ${description}
 * @author 鹤童 (<a href="mailto:chenwenpeng.cwp@alibaba-inc.com">发送邮件</a>)
 * @date ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
 */
public interface ${NAME} {
}

Enum


#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
/**
 * @desc ${description}
 * @author 鹤童 (<a href="mailto:chenwenpeng.cwp@alibaba-inc.com">发送邮件</a>)
 * @date ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
 */
public enum ${NAME} {
}

Annotation


#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
/**
 * @desc ${description}
 * @author 鹤童 (<a href="mailto:chenwenpeng.cwp@alibaba-inc.com">发送邮件</a>)
 * @date ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
 */
public @interface ${NAME} {
}

Live Templates

截屏2025-07-08 19.58.10


/**
 * @desc $ENDS$
 * $param$
 * @return $return$
 * @author 鹤童 (<a href="mailto:chenwenpeng.cwp@alibaba-inc.com">发送邮件</a>)
 * @date $createdtime$ $hourandminute$
 */

截屏2025-07-08 19.59.16

groovyScript("       def result='';       def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList();       def types=\"${_2}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {          	if(i!=0)  		result+= ' * ';          	result+='@param ' + params[i] + ' - '+ ((i < params.size() - 1) ? '\\r\\n' : '');      };        return result;  ", methodParameters(), methodParameterTypes())
posted @ 2025-07-08 20:03  cwp0  阅读(108)  评论(0)    收藏  举报