Envoyé par
darrylsite
Je crois qu'il faille qu'on se fixe les idées.
Un package au niveau du système n'est rien d'autre qu'un dossier contenant des fichiers sources java (*.java). Chaque fichier .java contient une seule classe (abstraction faite des classes interne).
Pour utiliser des classes dont les codes sources sont disponibles dans ton projet, il faut que ces codes soit dans le répertoire de ton projet contenant les fichiers sources.
Si ce sont des fichiers .class, ou des librairies jar contenant des fichiers .class, il faut que ces librairies soit disponible dans ton classpath pour permettre à ton application d'avoir accès à ces class.
Il est possible d'importer les classes que ça soit dans des librairies ou des classes dont le code est disponible. L'importation te permet d'utiliser une classe déclarée dans un autre package sans avoir à fournir le nom complet de la classe.
Nuance, on n'importe pas des packages mais des classes contenues dans des packages.
Salut,
Le problème n'est pas la compréhension mais la manipulation. Je décris exactement ce que j'ai fait avec Eclipse, merci de me dire ce qui ne va pas
1) Je crée un projet java
File/New/Java Project
Project name: Helloworld
Je choisis "use project folder as root for sources and class files
2) J'importe les fichiers sources
Project/properties/Add External Class folder
J'ajoute le dossier D:\Documents\Java\TIJ
Ce dossier contient plusieur dossiers, chaque dossier contient plusieurs fichier .class
3)Maintenant, dans mon dossier, je trouve au dessous de "JRE System Library", un autre dossier qui est "Referenced Libraries", je vois bien mon dossier est inclu dedans. (ce qui est pour moi logique jusqu'à maintenant
4) Je crée ma première classe "hello world"
Clique droit sur mon projet/ New/ Class/
Name: HelloWorld
Je choisi "public static void main" pour pouvoir l'exécuter, puis Finish
5)Je fais un code simple pour afficher "hello world", ça marche (je trouve que eclipse est en train d'importer mes fichiers sources)
6)Maintenant c'est l'étape qui a le problème: comment utiliser les class que j'ai importés?
J'ai fait
ça ne marche pas
J'ai essayé
import polymorphism.music
Non plus
import TIJ.polymorphism.music
Non plus
Je copie/colle ici la class music jusque pour exemple
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
//: polymorphism/music/Music.java
// Inheritance & upcasting.
package polymorphism.music;
public class Music {
public static void tune(Instrument i) {
// ...
i.play(Note.MIDDLE_C);
}
public static void main(String[] args) {
Wind flute = new Wind();
tune(flute); // Upcasting
}
} /* Output:
Wind.play() MIDDLE_C
*///:~ |
Partager