2010-03-15 23 views
0

Je suis nouveau à Java (C++ guy moi-même) et essaie de compiler un programme simple (tester différents algorithmes de nombres aléatoires) en Java. J'ai une interface que je veux utiliser pour implémenter une autre classe avec, ces deux éléments sont dans le même paquet. J'ai donc deux fichiers dans mon répertoire "Random" - "RandomInterface.java" et "RandomTest1.java" (qui implémente RandomInterface). Je peux utiliser javac pour compiler RandomInterface.java très bien, mais je reçois l'erreur suivante lorsque je tente alors de compiler RandomTest1:Inclure une interface du même paquet (Java)

RandomTest1.java:3: cannot find symbol 
symbol: class RandomInterface 
public class RandomTest1 implements RandomInterface 
           ^
1 error 

Je déclare les deux fichiers pour faire partie du même paquet (aléatoire) comme le premier ligne de chaque fichier. Que dois-je faire pour inclure la classe RandomInterface dans la commande de compilation pour RandomTest1?

Merci!

+0

Ceci est très similaire à http://stackoverflow.com/questions/2249066/making-java-packages/2249096#2249096 –

+0

J'ai essayé d'ajouter -cp "." aux arguments de ligne de commande pour javac, n'a fait aucune différence. – DashRantic

Répondre

1

Votre texte indique RandomInterface mais votre code indique RandomClass. Est-ce juste un simple oubli, ou est-ce que je manque quelque chose?

+0

Au départ, j'avais commencé avec l'interface en tant que classe abstraite - je suppose que j'avais copié le message d'erreur avant que je l'ai passé à une interface. Je vais mettre à jour mon message avec le bon message d'erreur actuel - toujours la même chose cependant. – DashRantic

0

En Java, nous utilisons extends mot-clé pour étendre la classe et implements pour l'interface et où que vous utilisez un mauvais mot-clé pour le mauvais type. Si c'est la classe alors vous devriez le extends.

+0

C'est une interface – DashRantic