Maison > Java > javaDidacticiel > Pourquoi les classes Java compilées ont-elles des signes dollar ?

Pourquoi les classes Java compilées ont-elles des signes dollar ?

Mary-Kate Olsen
Libérer: 2024-10-25 10:35:31
original
1084 Les gens l'ont consulté

Why Do Compiled Java Classes Have Dollar Signs?

Classes compilées Java avec signes dollar

Lors de l'utilisation d'Eclipse pour exporter une application sous forme de fichier JAR, certaines classes peuvent contenir un signe dollar et un numéro. Cela peut prêter à confusion, en particulier pour les classes relativement grandes.

Explication :

Ces classes sont liées à des classes internes, qui sont des classes déclarées dans une autre classe. Lorsqu'une classe interne est compilée, elle génère un fichier de classe distinct nommé avec le nom de la classe externe suivi d'un signe dollar et d'un nombre. Par exemple, une classe interne nommée Child au sein d'une classe nommée Parent donnerait un fichier de classe nommé Parent$Child.class.

Les classes internes anonymes, qui sont déclarées sans nom, se voient attribuer un numéro à la place. Ceci explique la présence de fichiers de classe comme Find$1.class dans le fichier JAR.

La taille du code Java n'influence pas la création de plusieurs fichiers de classe. Les classes internes sont créées séparément de la classe principale pour conserver la modularité et l'organisation du code.

Exemple :

Considérez le code suivant :

<code class="java">public class OuterClass {
    class InnerClass {
    }
    
    public static void main(String[] args) {
        // Create an instance of the inner class
        InnerClass inner = new InnerClass();
    }
}</code>
Copier après la connexion

Une fois compilé, ce code donnera lieu à deux fichiers de classe : OuterClass.class et OuterClass$InnerClass.class. La méthode principale fera référence à l'InnerClass de la classe externe.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal