[unity]クラスとインスタンスについて

 クラスとは

    クラスはオブジェクトを作るための設計図のようなもの。ゲームでいえばキャラクターって設計図(クラス)があって、その設計図の内容がキャラクター名とかになる。あくまでクラスは設計図で、固有のキャラクター名をつけてキャラクターを作るときにはインスタンスを作成する必要がある。

クラスの書き方

class character(←クラス名){
string charactername;
}
これでstring型のcharacternameって変数をもったcharacterってクラスを宣言した。クラスの中の変数はメンバ変数とか言われる。

インスタンスとは

あくまでクラスは設計図で、クラスを定義しただけだとメモリも何も確保できていない。そこでインスタンスを使ってメモリを確保する必要がある。ちなみにインスタンスは参照型なので、メモリの場所を扱うことになる。詳しくはインスタンスの書き方で

インスタンスの書き方

character a = new character();
(↑クラス名) (↑変数)
でインスタンスを作成できる。
a.charactername=mario;
で確保したインスタンスaにキャラクターの名前を入れることができる。
ただし参照型なので
character a = new character();
character b =a;
みたいなことをするとaもbも同じメモリの場所を見に行くので注意が必要
character a = new character();
character b = new character();
にすると別々の場所を参照しにいく。

コメント

タイトルとURLをコピーしました