電流を出力したいだけなのに
import Java.util.*;
初めに、そして
System.out.println(new Date());
本体に。
しかし、私が得たものは次のようなものでした:
Date@124bbbf
インポートをimport Java.util.Date;
に変更すると、コードは完全に機能しますが、なぜですか?
====================================
問題は、問題ありませんでした。私のソースファイルは "Date.Java"でした。これが原因です。
まあ、それはすべて私のせいです、私は周りのみんなを混乱させました; P
そして、以下の皆さんに感謝します。それは本当に素敵なあなたです;)
他の「Date」クラスがどこかにインポートされている可能性があります(または、パッケージにDateクラスがあり、インポートする必要はありません)。 「import Java.util。*」では、「その他」の日付を使用しています。この場合、コードでJava.util.Dateを明示的に指定するのが最善です。
または、クラスに「日付」という名前を付けないようにしてください。
_Java.util.Date
_のtoString()
実装は、クラスのインポート方法に依存しません。常にニース形式の日付を返します。
表示されるtoString()
は、別のクラスからのものです。
特定のインポートはワイルドカードインポートよりも優先されます。
この場合
_import other.Date
import Java.util.*
new Date();
_
_other.Date
_ではなく_Java.util.Date
_を参照します。
奇妙なことは
_import other.*
import Java.util.*
_
_other.Date
_と_Java.util.Date
_の両方が一致するため、Dateへの参照があいまいであることを示すコンパイラエラーが表示されます。
import Java.util.*;
dateクラスを含むJava.util内のすべてをインポートします。
import Java.util.Date;
dateクラスをインポートするだけです。
これらのどちらを行っても違いはありません。
プログラムはimport Java.util。*;またはimport Java.util.Date;のどちらでもまったく同じように動作するはずです。その間にあなたがした他の何かがなければなりません。
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?
「完全に機能する」とはどういう意味ですか? Dateオブジェクトの出力は、Java.util。*とJava.util.Dateのどちらをインポートした場合でも同じです。オブジェクトの印刷時に得られる出力は、対応するクラスのtoString()メソッドによるオブジェクトの表現です。