• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:フィールドを持たないクラスが、値を保持できる理由)

フィールドを持たないクラスが、値を保持できる理由

このQ&Aのポイント
  • なぜint型フィールドを持たないMyGenericsクラスが変数やリテラルを保持できるのでしょうか?
  • Objectクラスのフィールドを持っていますが、Objectクラスも、フィールドは持っていませんよね?メソッドも空のObject()しか持っていないですし。
  • 一応、javadocを読んだのですが、読み方間違えていますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • ngsvx
  • ベストアンサー率49% (157/315)
回答No.1

java5から導入されたオートboxingという機能があります。 プリミティブ型を自動的に適切なラッパークラスに包んだオブジェクトに変換するものです。 つまり、 MyGenerics(x) というのは自動的に、 MyGenerics(new Integer(x)) に変換されています。 Objectクラスは、全てのクラスのスーパークラスですから、 Object変数にIntegerを代入することは問題ありません。 という説明でわかると思いますがいかがですか?

関連するQ&A