ホームページ  >  記事  >  Java  >  JAR ファイル内の Java コンパイル済みクラスのファイル名にドル記号と数字が含まれるのはなぜですか?

JAR ファイル内の Java コンパイル済みクラスのファイル名にドル記号と数字が含まれるのはなぜですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-25 11:01:02556ブラウズ

Why do Java compiled classes in JAR files have dollar signs and numbers in their file names?

ファイル名内にドル記号が表示される Java コンパイル クラス

質問:

Eclipse を使用して作成されたエクスポートされた JAR ファイルでは、特定のclass ファイルでは、クラス名に続いてドル記号と数字が表示されます。例:

<code class="java">Find.class 
Find.class
Find.class
Find.class</code>

これは、大きなクラスが複数の小さなクラスに分割されるコード サイズ制限の結果でしょうか?オンラインで広範囲に検索しても、関連する情報は得られませんでした。誰か説明してもらえませんか?

答え:

これらの追加のクラス ファイルは、元のクラス内の 内部クラス の結果です。内部クラスは外部クラス内にネストされており、class キーワードを使用して宣言されます。

<code class="java">public class OuterClass {
    public class InnerClass {
        // Nested code
    }
}</code>

内部クラスを含むクラスがコンパイルされると、OuterClass$InnerClass という命名規則に従って、内部クラスごとに個別のクラス ファイルが生成されます。 。クラス。匿名の内部クラス (名前のないクラス) には数値識別子が割り当てられ、OuterClass$1.class のようなファイル名になります。

一般的な考えに反して、元のクラスのサイズは複数のクラス ファイルの作成に影響しません。 。内部クラスの存在が、この動作の唯一の理由です。

以上がJAR ファイル内の Java コンパイル済みクラスのファイル名にドル記号と数字が含まれるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。