KNejad:
私は、次のJavaクラスを持っています
public class HelloWorld {
public static void main(String []args) {
}
}
私は、このファイルをコンパイルしたクラスファイルにSHA256を実行するとI GET
9c8d09e27ea78319ddb85fcf4f8085aa7762b0ab36dc5ba5fd000dccb63960ff HelloWorld.class
次の私は、クラスを変更し、このような空白行を追加しました:
public class HelloWorld {
public static void main(String []args) {
}
}
再び私は同じ結果を得ることを期待出力にSHA256を走ったが、代わりにI GOT
11f7ad3ad03eb9e0bb7bfa3b97bbe0f17d31194d8d92cc683cfbd7852e2d189f HelloWorld.class
私が上で読んだ本TutorialsPointの記事:ということ
おそらくコメントで、空白のみを含む行は、空白行として知られており、Javaは完全にそれを無視します。
Javaは両方のプログラムのために別のバイトコードにコンパイルされている理由の空白行を無視しますので、だから私の質問は、ありますか?
つまりにおけるものの違いバイトが置き換えられているバイト。HelloWorld.class
0x03
0x04
フェデリコクレズCulloca:
基本的には、行番号は、あなたのソースコードは、あなたがやった方法を変更した場合ので、あなたの方法は異なるラインで始まり、コンパイル済みのクラスが違いを反映して、デバッグのために保存されています。