ホームページ  >  に質問  >  本文

Gao Qi の Java ビデオ コードでは、時刻は Date クラスを使用して作成された新しいオブジェクトを使用して出力されるのに、ハッシュ コード アドレスは自己作成されたオブジェクトを使用して出力されるのはなぜですか?

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

リーリー

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

リーリー

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

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

巴扎黑巴扎黑2697日前949

全員に返信(4)返信します

  • 欧阳克

    欧阳克2017-06-23 09:16:34

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

    返事
    0
  • 巴扎黑

    巴扎黑2017-06-23 09:16:34

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

    返事
    0
  • typecho

    typecho2017-06-23 09:16:34

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

    返事
    0
  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-06-23 09:16:34

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

    返事
    0
  • キャンセル返事