Programmation Java: la recherche de fichiers

Vous essayez de compiler le programme Java dans l'exemple fiche. Le compilateur Java perce le code et trébuche sur quelques pièces manquantes. Il ya d'abord ce qu'on appelle une ArtFrame. Ensuite vous avez cette Dessin affaires. La liste définit une classe nommée ShowFrame, pas ArtFrame ou Dessin. Alors d'où vient le compilateur aller pour des informations sur le ArtFrame et Dessin les classes?

Si vous arrêtez de penser à ce sujet, le problème peut être intimidant. Si le compilateur aller chercher sur tout votre disque dur les fichiers nommés ArtFrame.java ou Drawing.class? Quelle est la taille de votre nouveau disque dur? 500 Go? 750 Go? 6,000,000GB?

Et que dire de références à des fichiers sur les lecteurs réseau? L'espace de recherche est potentiellement illimité. Que faire si le compilateur finalement résout tous ces problèmes? Ensuite, vous essayez d'exécuter votre code, et la machine virtuelle Java (JVM) commence à rechercher tout recommencer.




Pour apprivoiser ce problème, Java définit ce qu'on appelle un CLASSPATH. La CLASSPATH est une liste des lieux où le compilateur et la JVM recherchent code. Il ya plusieurs façons de définir un CLASSPATH. Certains programmeurs de créer un nouveau chemin de classe chaque fois qu'ils exécutent un programme Java. D'autres créent un système à l'échelle CLASSPATH variable.

Si vous êtes familier avec le PATH variable sur les ordinateurs Windows et UNIX, vous pouvez déjà savoir comment ça fonctionne.

D'une façon ou une autre, le compilateur et la JVM besoin d'une liste des lieux à la recherche de code. Sans une telle liste, ces outils Java ne regardent pas n'importe où. Ils ne trouvent pas des classes comme ArtFrame ou Dessin. Vous obtenez un ne peut pas trouver le symbole un message ou NoClassDefFoundError message, et vous êtes très malheureux.

Pour faire de cette entreprise sur l'accès modificateurs clair, vous avez besoin d'un exemple. Dans de nombreux exemples Java, presque tout est public. Avec l'accès du public, vous ne devez pas vous inquiéter à propos de qui peut utiliser quelles.

Le code pour ce premier exemple vient en plusieurs parties. La première partie, qui est dans la liste, affiche une ArtFrame. Sur la face de la ArtFrame est un Dessin. Si toutes les bonnes pièces sont en place, l'exécution du code affiche une fenêtre comme celle montrée dans la figure.

image0.jpg
import-import com.burdbrain.frames.ArtFrame com.burdbrain.drawings.Drawing classe ShowFrame {void main (String args []) {public static ArtFrame artFrame = new ArtFrame (nouveau dessin ()) - artFrame.setSize (200, 100) -artFrame.setVisible (true) -}}

» » » » Programmation Java: la recherche de fichiers