• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:javaの「型」がよくわかりません。)

Javaの「型」とは?初心者にもわかる解説

このQ&Aのポイント
  • Javaの「型」について初心者にもわかるように解説します。
  • Javaの「型」は指示的な役割や宣言に利用するものですが、具体的にはどのようなものなのでしょうか?
  • 引数を指定する際に利用する型についても解説します。

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

  • ベストアンサー
  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.1

http://okwave.jp/qa/q7336441.html の私の回答ANo.3 http://okwave.jp/qa/q7175470.html の私の回答ANo.4, ANo.6 を,お読みいただき,それでも釈然としない点を指摘していただけるとありがたいです。

kuu1207
質問者

お礼

回答ありがとうございます。 あれから自分でも他の本や先輩にも、今回の回答と合わせ質問し理解することができました。 とはいってもまだまだ確信をもった理解というものでもないので、勉強を続けていきます。

その他の回答 (2)

  • racene
  • ベストアンサー率70% (21/30)
回答No.3

一言で言うと、「型」とは「インターフェース」の表現方法の一種です。 紛らわしいですが、Java言語のinterfaceのことを言っているわけではありません。 もっと一般的な意味の「インターフェース」です。 具体的には、Personという型は「人間を表現していて、workというメソッドがある」ことを示します。 Personを継承するということは、Personの性質「人間を表現していて、workというメソッドがある」を受け継ぐということです。 StudentやTeacherはPersonを継承しているので、やはり「人間を表現していて、workというメソッドがある」わけです。 そのため、Person型の入る場所、つまり「人間を表現していて、workというメソッドがある」ものが入る場所にはStudentやTeacherのインスタンスを入れることができます。

kuu1207
質問者

お礼

回答ありがとうございます。 型という言葉に引っ張られすぎていたように思います。 仕組みはわかるのですが。 もっとシンプルに考えていこうと思います。

  • nak777r
  • ベストアンサー率36% (49/136)
回答No.2

イメージとしての話 メモリの中に 24 バイトの バイト配列が確保されていて それが person クラス型 と呼ばれるものであるとします。 その person クラス型 の 24 バイトとまったく同じ並びの配列を持っていて、 その後ろに 8 バイトの配列が追加されたものが student クラス型 同様に person クラス型 の 24 バイトとまったく同じ並びの配列を持っていて、 その後ろに 16 バイトの配列が追加されたものが teacherクラス型 と呼ばれているとします。 関数の引数には、メモリのアドレス(メモリの先頭から何バイト目にその情報が あるのか?)で渡すので、関数の引数は、 person クラス型であると指定すれば person クラス型として受取る事が出来ます。 もちろん普通に student クラス型 として読むことも出来ます 24バイト目以降が違うので、student クラス型 として、指定されている関数の 引数に teacherクラス型をセットする事は出来ません 基本的なイメージとして、これが 継承 の仕組みです

関連するQ&A