6
votes

Java - Comment utiliser un fichier de classe?

Je suis nouveau à Java et je me demande comment importer des fichiers de classe dans NetBeans et l'utiliser.

Je comprends qu'un fichier de classe est un code octet lisible par machine, mais je me fiche de ce qui se passe sous la hotte. Je voudrais juste l'importer dans mon projet actuel et le reconnaître pour que je puisse utiliser la classe.

En outre, le fichier de classe est intégré dans un fichier JAR. J'ai importé le fichier jar dans mon dossier de bibliothèques / onglet dans la fenêtre Projets, mais je ne sais pas comment obtenir mon projet de reconnaître la classe. Il dit "Impossible de trouver le symbole" chaque fois que j'essaie d'instancier un objet.


6 commentaires

Gardez-le à l'intérieur du pot. Se convertir également en .NET pendant que votre réputation est toujours positive;)


Qui a pour dire que .Net sera meilleur?


@LPTHNC (445) - Utiliser .NET n'a pas beaucoup aidé votre réputation beaucoup :-)


Je suis une perte pour la raison pour laquelle cette question a été votée.


Je suppose que le nom de la question pourrait être changé à quelque chose de plus proche de la question actuelle.


@Stephen C: LPTHNC a été ici pour seulement 17 jours.


4 Réponses :


2
votes

in NetBeans (version 5.5.1), vous pouvez ajouter un fichier JAR à un projet en cliquant avec le bouton droit de la souris sur le nom du projet et en choisissant Propriétés, puis des bibliothèques (à partir de catégories), et il y a un bouton "Ajouter un jar / dossier". , qui peut être utilisé pour l'ajouter au path compilé et / ou de classe d'exécution. L'ajout aux bibliothèques de compilation est assez bien, car elle sera ajouté automatiquement au délai d'exécution via son entrée "de classe pour les sources de compilation".


0 commentaires

1
votes

Vous devez soit spécifier le package complet de package à la classe. E.g xxx

ou utiliser une instruction d'importation xxx


0 commentaires

1
votes

En outre, les fichiers de classe ne sont pas lisibles par machine / binaires dans le sens des fichiers C compilés. Ouvrez un fichier de classe avec votre éditeur de texte et vous verrez qu'il s'agit d'une liste des instructions de texte. La machine virtuelle Java examine ces fichiers de classe et les interprète, exécutant les instructions résultantes.


6 commentaires

Je pense que Alex est de sens des fichiers ".Class", qui sont les fichiers les charges JVM. Ces fichiers sont binaires, ils ne sont pas un fichier de code machine, tels que des fichiers C, mais ils sont pas fichiers texte. ".java" sont des fichiers texte compilés en byTecode pour produire le fichier "Class ". The ClassFile Définition: Java.sun.com/docs/ Livres / JVMS / Deuxième_edition / HTML / ...


Les fichiers .java sont le code source. .ClassFiles sont très lisibles. Ouvrez un dans un éditeur de texte.


Je ne sais pas ce que vous voulez dire comme lisible, mais tout fichier de classe que j'ai ouvert (les 10 dernières années) n'est pas un fichier texte. Lecture de la définition de fichier de classe confirme simplement que: Ils commencent par le code magique (0xca 0xfe 0xba 0xbe), suivi de 3 entiers de 2 octets pour le nombre mineur, majeur et constant-piscine. S'il vous plaît envoyez-moi une experte d'un fichier de classe (valide) «lisible». Voici ce que je vois lors de l'ouverture d'un éditeur de texte: img254.imageshack.us/img254/ 6135 / HELLOI.JPG et ici le fichier de classe: simu .wikidot.com / local - Fichiers / Java: Java / Hello.class


D'après ce que vous avez posté, je peux voir que vous disposez d'un programme simple avec une seule instruction System.Out.PrintLN. Les méthodes / instructions sont en texte (donc lisibles). Inversement, essayez d'examiner un fichier C compilé dans un éditeur de texte, vous n'obtenez pas les mêmes instructions textuelles.


Juste parce que Certains sont lisibles, ce n'est pas un fichier texte. Vous ne pouvez pas voir (comme texte) s'il y a un si , d'autres commandes de contrôle de flux ou arithmétiques dans le code. L'exécutable C a également un segment de texte où vous pouvez lire quelles chaînes sont utilisées, même vraie pour les fonctions de la bibliothèque importées (si je me souviens).


Ahh je vois ce que tu veux dire. Vous avez raison. Je pensais que toutes les instructions étaient sous forme de texte dans un fichier de classe, similaire à ce que l'Assemblée ressemblerait. Après quelques programmes de test simples, les instructions sont des codes OP binaires (Java Bytecode). Merci pour la clarification.



10
votes

Vous devez importer en appelant le nom du package source. IE importer hello.car; . Dans votre cas, vous essayez d'appeler Importer sur un nom de dossier JAR qui conduit à une erreur "Impossible de trouver le symbole".

Permettez-moi d'essayer de donner un exemple pour une meilleure compréhensibilité

  • Considérez cette application de véhicule simple qui a une classe de voiture et une classe de voiture de test Texte alt

  • Convertissez-le en pot et ajoutez-le dans un autre projet appelé ImportveHiclejar

    Texte alt http://i46.tinypic.com/qxmlxt.png

    • Afin d'instancier la classe de voiture dans le fichier Main.java, ajoutez les éléments suivants comme indiqué sur la figure Texte alt

      J'espère que cela vous aidera !! / p>


0 commentaires