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>
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!