Idea 使用技巧记录


声明:以下所讲皆是在 Idea 2019版本上操作的,且 Key Map 最好选择 Default 模式。

1、配置 sys 输出快捷键

首先点击工具栏 File->Settings,搜索 Live…
在这里插入图片描述
在这里插入图片描述
新建一个分组,然后在该分组下添加快捷键。
在这里插入图片描述
因为已经配置了 sys 快捷键,这里配置 try 快捷键,过程一样。
在这里插入图片描述
此时, 在下面有一条红色警告语, 点击最下面的”Define”, 选择 Java。
在这里插入图片描述
点击 Apply ,然后点击 OK 退出。在 Java 文件中输入 sys 即可带出 System.out.println();

2、try/catch 快捷键

选中想被 try/catch 包围的语句,同时按下 ctrl+alt+t 快捷键,如下图:
在这里插入图片描述
这里也可以便捷地带出别的嵌套语句。

3、移动到行头行尾快捷键

首先点击工具栏 File->Settings,找到 Keymap 列表。
在这里插入图片描述
在 Keymap 中搜索 line。
在这里插入图片描述
其中 Move Caret to Line End 表示将光标移动到行尾,Move Caret to Line Start 表示将光标移动到行头,自带的快捷键是 Home 和 End 快捷键,但是由于使用起来不方便,所以根据自己习惯,将 Alt+. 设置为移动到行尾的快捷键,Alt+逗号 设置为移动到行头的快捷键。

在这里插入图片描述
选中要添加快捷键的行,右键选择 Add Keyboard Shortcut ,然后同时点击 Alt+.,点击 OK 就可以了。

不管是在 Idea 编辑器,还是 Pycharm 编辑器,编写代码为了更加快速,这两个快捷键使用的频率相应来说也就很高。

4、给 main 方法附带参数

点击 Run 下的 Edit Configurations
在这里插入图片描述
配置 Configuration 页中的 Program arguments 选项,就可以在 idea 中传入参数,参数之间用空格隔开。
在这里插入图片描述
最后重新运行 Java 程序即可。

5、编译

编程语言

在介绍编译和反编译之前,我们先来简单介绍下编程语言(Programming Language)。编程语言(Programming
Language)分为低级语言(Low-level Language)和高级语言(High-level Language)。
机器语言(Machine Language)和汇编语言(Assembly Language)属于低级语言,直接用计算机指令编写程序。
而C、C++、Java、Python等属于高级语言,用语句(Statement)编写程序,语句是计算机指令的抽象表示。

编译

上面提到语言有两种,一种低级语言,一种高级语言。简单的理解:低级语言是计算机认识的语言、高级语言是程序员认识的语言。
那么如何从高级语言转换成低级语言呢?这个过程其实就是编译

将便于人编写、阅读、维护的高级计算机语言所写作的源代码程序,翻译为计算机能解读、运行的低阶机器语言的程序的过程就是编译。负责这一过程的处理的工具叫做编译器

现在我们知道了什么是编译,也知道了什么是编译器。不同的语言都有自己的编译器,Java 语言中负责编译的编译器是一个命令:javac

当我们写完一个 HelloWorld.java 文件后,我们可以使用 javac
HelloWorld.java 命令来生成 HelloWorld.class 文件,这个 class 类型的文件是JVM可以识别的文件。通常我们认为这个过程叫做 Java 语言的编译。其实,class 文件仍然不是机器能够识别的语言,因为机器只能识别机器语言,还需要 JVM 再将这种 class文件类型字节码转换成机器可以识别的机器语言。

javac是收录于JDK中的Java语言编译器。该工具可以将后缀名为.java的源文件编译为后缀名为.class的可以运行于Java虚拟机的字节码。

在 Idea 工具上实现源码的编译
在这里插入图片描述

6、反编译手段

反编译的过程与编译刚好相反,就是将已编译好的编程语言还原到未编译的状态,也就是找出程序语言的源代码。就是将机器看得懂的语言转换成程序员可以看得懂的语言。Java语言中的反编译一般指将class文件转换成java文件。

有了反编译工具,我们可以做很多事情,最主要的功能就是有了反编译工具,我们就能读得懂Java编译器生成的字节码。比如我们就可以洞悉Java语法糖背后的原理。

1、javap

javap 是 jdk 自带的一个工具,可以对代码反编译,也可以查看 java 编译器生成的字节码。javap 和其他两个反编译工具最大的区别是它生成的文件并不是 java 文件,也不像其他两个工具生成代码那样更容易理解。用以下源码进行讲解:

public class ConstantStr {

    public static void main(String[] args) {
        char c = 'a';
        int cn = (int)c;
        int ch = c & 0xffff;
    }
}

按照上述介绍的那样对该源码进行编译,然后在输入 javap -c ConstantStr 命令进行反编译。
在这里插入图片描述
最终得到如下结果:

public class stringLearn.ConstantStr {
  public stringLearn.ConstantStr();
    Code:
       0: aload_0
       1: invokespecial #1                  // Method java/lang/Object."<init>":()V
       4: return

  public static void main(java.lang.String[]);
    Code:
       0: bipush        97
       2: istore_1
       3: iload_1
       4: istore_2
       5: iload_1
       6: ldc           #2                  // int 65535
       8: iand
       9: istore_3
      10: return
}

javap 并没有将字节码反编译成 java 文件,而是用另一种形式的字节码显示,其中包含的有 JVM 指令符号。这种反编译形式得到的结果虽然不像 Java 文件那样,但是内容却是最完整的,所以有必要了解一下必要的指令的意义。在查看编译时期 Class 文件常量池中字面量的时候,就需要通过该结果进行查看。

2、Jad

首先点击工具栏 File->Settings,找到 Plugins 列表。
在这里插入图片描述
点击安装 IdeaJad,然后重启 Idea,打开 .class 文件,会提示是否需要反编译,点击 yes,然后就提示报错,报错信息如下:
在这里插入图片描述

网上一番查询,得知这是以往的旧版本,已经不更新了,所以放弃使用该插件。

至于 IntelliJad9 和 IntelliJad 安装后重启都会报错,最后也就不了了之,放弃使用该插件。
在这里插入图片描述

3、Java Decompiler

同样搜索关键词 Java Decompiler,点击 Install,重启 Idea,然后在 Idea中打开 .class 文件,结果如下:

  // IntelliJ API Decompiler stub source generated from a class file
  // Implementation of methods is not available

package stringLearn;

public class ConstantStr {
    public ConstantStr() { /* compiled code */ }

    public static void main(java.lang.String[] strings) { /* compiled code */ }
}

对比不安装此插件打开.class 文件的结果:

//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//

package stringLearn;

public class ConstantStr {
    public ConstantStr() {
    }

    public static void main(String[] var0) {
        byte var1 = 97;
        int var3 = var1 & '\uffff';
    }
}

???对于此结果深感疑惑,能查看什么内容,故放弃使用该插件。

4、JD-GUI

JD-GUI 是显示 java 源代码 *.class 文件的 图形界面工具。可以在这里下载:JD-GUI-DownLoad

下载下来后,打开该工具,直接将 jar包或 class 文件拖拽到 显示窗口即可查看源代码。
在这里插入图片描述
综上,使用 javap 命令,或直接在 Idea 中打开,又或者 JD-GUI 工具打开.class 文件,来查看反编译的信息,虽然彼此结果有所出入,以 javap 命令执行后的结果为准。

7、查看最近修改的代码

ctrl + E

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vdCKZa0H-1573177960361)(F:\桌面移植\csdn博客\32\v2-9d6bea9d77991ad7036c09c0e05fb72d_b.jpg)]

8、 查看当前类的子类

ctrl + h

9、 显示类之间的关系

ctrl + alt + u

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CLUkPrvZ-1573177960362)(F:\桌面移植\csdn博客\32\微信截图_20191107094559.png)]

10、 生成代码(如GET,SET方法,构造函数等)

ALT+INSERT

11、查看方法被哪里调用

ctrl + b

12、创建 Java 类时,自动在文件头添加作者和创建时间

在这里插入图片描述

再次新建类文件,效果如下:

在这里插入图片描述

13、方法注释

同配置 sys 输出快捷键类似,具体操作如下图所示:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

注: 当注释放在函数的外面时,自动获取的参数都为空。

如果平时需要在方法外进行注释,可以输入 /** + 回车即可。

14、查找

当前文件中查找

ctrl + f

在这里插入图片描述
当前项目中查找

ctrl + shift + f

在这里插入图片描述

15、替换

ctrl + shift + r

在这里插入图片描述

16、生成 Junit 测试类

如果是 maven 项目,可以在 pom.xml 文件中添加 Junit 依赖。

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.12</version>
</dependency>

如果是 Spring Boot 项目,spring-boot-starter-test包中就包含了 Junit 依赖。

 <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
      <exclusions>
          <exclusion>
              <groupId>org.junit.vintage</groupId>
              <artifactId>junit-vintage-engine</artifactId>
          </exclusion>
      </exclusions>
  </dependency>

1、在要生成测试类的类里面,按ctrl+shift+t –> create new test

在这里插入图片描述

2、将鼠标光标放到要生成测试类的类名或者方法名上面,按ctrl + enter –> create test

在这里插入图片描述

点击创建 create test:弹出下面选择框

在这里插入图片描述
在这里插入图片描述

后期会不断记录新的操作过程讲解。

更多内容可以参考官方文档:IntelliJ IDEA官方文档

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
感谢您的提问!以下是一些关于使用 Idea 2023 版本的技巧: 1. 快捷键的使用:熟悉并使用常用的快捷键可以大大提高开发效率。例如,Ctrl + N 可以快速打开类文件,Ctrl + Shift + F 可以全局搜索等等。您可以在 Idea 的设置中查看和修改快捷键配置。 2. 代码自动完成:Idea 可以根据上下文自动完成代码,您可以使用 Ctrl + Space 快捷键手动触发代码补全。此外,Idea 还提供了智能代码补全和代码模板等功能,可以进一步加快编码速度。 3. 代码导航:Idea 提供了多种方式来进行代码导航,例如使用 Ctrl + 左键单击可以快速跳转到方法定义处,Ctrl + Alt + 左箭头可以返回上一个浏览位置,Ctrl + E 可以打开最近浏览过的文件列表等等。 4. 调试功能:Idea 提供了强大的调试功能,可以帮助您定位和解决代码中的问题。您可以设置断点、观察变量、单步调试等等。使用快捷键 Shift + F9 可以快速启动调试。 5. 版本控制:Idea 对于版本控制系统(如 Git)的支持非常好。您可以在 Ida 中进行代码提交、拉取、推送等操作,同时还可以查看代码历史记录、解决冲突等等。 6. 插件扩展:Idea 支持大量的插件,可以根据自己的需求进行扩展。例如,您可以安装插件来支持不同的编程语言、集成其他开发工具等。 这些是一些常用的技巧,希望对您有帮助!如有更多问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值