最近在使用IDEA做实验时,发现一个很奇怪的问题,分享一下。
笔者这里所使用的IDEA版本为2023.3.5的community版本。
大家都知道,java程序在运行的时候,编译器会将程序编译为面向JVM(java虚拟机)的字节码文件(后缀为.class)。在IDEA中,java类文件与.class文件的图标的差异很明显:
这是java类文件,我们可以在IDE中对其进行修改:
这是.class文件,为只读文件,不得更改。
问题在于:在进行代码编写的时候,IDEA会错误的将java类文件给识别成.class文件,这就导致我们无法对文件内容进行更改。
解决方法:右键-重写文件类型,找到“原生”(即txt文件),进行重写
之后在将文件重写回java类文件,发现这回IDEA就可以正确识别了!
(PS:笔者并不清楚其中的原理,只是将解决的过程分享给大家。如有懂得其中原理的高人能在评论区指点一二,在下将感激不尽)