InstantiateとgetComponentについて調べてみる

オブジェクト指向プログラミングでは様々な抽象的な概念があり一朝一夕ではなかなか理解が難しいところがある。
Unityのコーディングにおいて超頻出となるInstantiateとgetComponentについて調べてみた。

instantiate?
instantiate【動詞】
インスタンス化する; インスタンス生成する

オブジェクト指向プログラミングにおいて,クラスのインスタンスを生成すること.

出典

インスタンス

"例えば「名前、身長、体重」というクラスがあるとすれば、そのインスタンスは「田中、175、65」というように作られる。一つのクラスから複数のインスタンスを作ることができ、それぞれのインスタンスは違った値を持ちうる。プログラムの中で実際に扱われるのはクラスではなく、こうして作られたインスタンスの方である。"

出典

ジェネリクス

クラス名・メソッド名の後に続く <> の中の部分を型引数(type parameter)といい、 関数の引数と同じようにして、型をパラメータにすることが出来ます。 テンプレートクラスを参照する側ではクラス名の後に続く <> の中に利用したい型名を書くことで、その型に特化したクラスを生成することが出来ます。

ジェネリックなクラス・メソッドに対して、 具体的な型を与えることを「インスタンス化する」といいます。

出典


インタフェース?

インターフェース型とは、オブジェクト指向言語における参照型のひとつで、クラスのオブジェクトをインターフェースとして扱えるようにする参照型のことである。

出典

公開されたメソッドが、当該クラスをインスタンス化したオブジェクトに対して、別のオブジェクトがアクセス可能な全て、つまりインタフェースになる訳である。

インタフェースは、継承 (extends) されるのではなく実装 (implements) され、 複数のインタフェースをカンマ区切りリストで指定することができる。

出典