9
votes

Quelle est la différence entre Import Java.util. *; et importer java.util.date; ?

Je veux juste sortir du courant et j'ai écrit xxx

au début, et xxx

dans la partie principale.

Mais ce que j'ai eu était quelque chose comme ceci: xxx

lorsque je modifie l'importation vers import java.util.date; Le code Fonctionne parfaitement, pourquoi?

=========================================

Le problème était, d'accord, mon fichier source était "date.java", c'est la cause.

Eh bien, tout est de ma faute, j'ai confondu tout le monde; p

et merci à tout le monde ci-dessous. C'est vraiment gentil de votre part;)


5 commentaires

Dans votre premier exemple, avez-vous une perchage importer autre chose d'autre? Par exemple. java.sql.date?


Vous pourriez avoir d'autres importations - voyons du code compilable qui montre cela


Voir aussi: Stackoverflow.com/Questions/147454/... , Stackoverflow.com/questions/187453/... , Stackoverflow .com / questions / 585268 / ... , Stackoverflow.com/Questtions/1553909/...


Voter car parfois un bon contre-exemple est aussi utile que n'importe quoi. :)


Thx vous tous @mark, j'ai nommé la classe "Date" et c'est le problème @Finnw thx pour avoir cité @mtruesdell pitié, je ne peux pas voter encore .. un très novice ici je suis


5 Réponses :


2
votes

Votre programme devrait fonctionner exactement de la même manière avec importer java.util. *; ou import java.util.date; . Il doit y avoir quelque chose d'autre que vous avez fait entre les deux.


1 commentaires

Merci d'avoir répondu à la question et je savais qu'il n'y a pas de différence entre celles-ci, à moins que je nommé le SRC "date.java" ... :(



4
votes
import java.util.Date;

0 commentaires

12
votes

Vous avez probablement une autre catégorie de "date" importée quelque part (ou si vous avez une classe de date dans votre package, qui n'a pas besoin d'être importé). Avec "importer java.util. *" Vous utilisez la "autre" date. Dans ce cas, il est préférable de spécifier explicitement java.util.date dans le code.

ou mieux, essayez d'éviter de nommer vos classes "date".


1 commentaires

@ Ethanz6174: Voir Puzzle 7 Dans cette liste d'échantillons de Java Puzzlers - Javapuzzlers.com/java- Puzzler-Sampler.pdf . Ce livre est un recommandé défini pour tout programmeur Java!



0
votes
but what I got is something like this: Date@124bbbf  
while I change the import to: import java.util.Date;  
the code works perfectly, why? 
What do you mean by "works perfectly"? The output of printing a Date object is the same no matter whether you imported java.util.* or java.util.Date. The output that you get when printing objects is the representation of the object by the toString() method of the corresponding class.

0 commentaires

6
votes

Le Tostring () Implémentation de Java.Util.date ne dépend pas de la manière dont la classe est importée. Il renvoie toujours une belle date de formatée.

Le Tostring () Vous voyez vient d'une autre classe.

importation spécifique a la priorité sur les importations de caractères génériques.

Dans ce cas xxx

fait référence à Autre.Date et non java.util.date . .

La chose impair est que xxx

devrait vous donner une erreur de compilateur indiquant que la référence à la date est ambiguë car autre.date et java.util.date correspondances.


0 commentaires