Gao Qi の Java ビデオ コードでは、時刻は Date クラスを使用して作成された新しいオブジェクトを使用して出力されるのに、ハッシュ コード アドレスは自己作成されたオブジェクトを使用して出力されるのはなぜですか?
巴扎黑
巴扎黑 2017-06-23 09:14:34
0
4
946

最近 Gao 先生のビデオを見ていたときに、よく理解できなかった知識ポイントを見つけました。コードは次のとおりです:

リーリー

出力結果は次のとおりです:

リーリー

オブジェクトも出力しますが、自作オブジェクトはハッシュ コードを出力するのに、Date クラス オブジェクトは現在時刻を出力するのはなぜですか?

Xiaomengxin さんは友人に疑問を解消するよう求めています。とても感銘を受けました。

巴扎黑
巴扎黑

全員に返信(4)
学霸

Println メソッドは、出力オブジェクトの toString メソッドを呼び出します。オブジェクトが toString メソッドを定義していない場合は、継承チェーンに従って親クラスを見つけます。
Date には toString メソッドが定義されているため、出力はフォーマットされた属性情報になります。
カスタム Dog クラスには toString メソッドがないため、Object の親クラスの toString メソッドが使用されます

いいねを押す +0
巴扎黑

オブジェクトを印刷する場合、その toString メソッドの戻り値が toString メソッドをオーバーライドして印刷されます。 Dog が toString をオーバーライドしない場合は、親クラス Object の toString メソッドを呼び出します

いいねを押す +0
typecho

Date クラスは Object 親クラスの toString() をオーバーライドしますが、独自のクラスはオーバーライドしません。 。 。 Dateクラスのソースコードを見てみましょう

いいねを押す +0
女神的闺蜜爱上我

toString メソッドは書き直されています。ソース コードで自分で確認できます。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!