为什么两个仅在注释中不同的java文件会产生不同的类文件?

我有一个名为One.java的文件,它只有一条注释行.我编译它来生成类文件One.class并将其重命名为old.class.然后,我打开了One.java,引入了另外五条注释行并再次编译它以生成One.class.两个类文件都有相同的大小,但当我在它们上运行diff时,如:
diff One.class old.class
我得到了输出:

Binary files One.class and old.class differ

这是我的One.java文件:

// One.java
class One
{
    public static void main(String [] args)
    {
        System.out.println("Hello Java world");
    }
}

这是我修改过的One.java(附加注释行):

// One.java
// One.java
// One.java
// One.java
// One.java
// One.java
class One
{
    public static void main(String [] args)
    {
        System.out.println("Hello Java world");
    }
}

我在运行High Sierra的iMac上使用Java SE 10.

解决方法:

调试符号;基本上代码包括行号和其他用于调试的元数据.您可以使用javap -v One.class和javap -v old.class自行检查它

上一篇:Vue 中使用post传值,将序列化转换为json传值


下一篇:[reviewcode] 那些基础comments