LoginSignup
16

More than 5 years have passed since last update.

Unityとc#でクラスを書くメモ

Last updated at Posted at 2016-08-25

unity初心者がメモしていきます。

MonoBehaviourじゃない、ふつうのクラス

ふつうのクラス作る書き方と呼び出し方。

class
using UnityEngine;
namespace Hoge//←パッケージ的なもの
{
    public class Fuga
    {
        public Fuga()
        {
           Debug.Log("Unko");
        }

        public void Hello()
        {
            Debug.Log("Hello");
        }
    }
}
class_yobidasu
//インスタンス生成
using Hoge;
Fuga aaa = new Fuga();

クラス継承

「:」でつなぐだけみたい。base でスーパークラス参照。

extend
using UnityEngine;
using System.Collections;

public class Hoge : SuperClazz {

    public void Start () {
        base.Start();//スーパークラス参照
    }
}

オーバーライド

元の関数にはvirtual, 上書き関数はoverride をつける

extend
class Animal {
    public virtual void AnimalFunction() {
        Debug.Log("アニマルクラスです");
    }
}

class Hiyoko : Animal {
    public override void AnimalFunction() {
        Debug.Log("ひよこクラスです");
    }

アクセス修飾子 private,public,protected

関数・変数の前につけるやつ。

  • public - どこからでも使える
  • private - そのクラスしか使えない
  • protected - 子クラスからはつかえる。継承する時つかう
  • virtual - オーバーライドする元の関数につける
  • abstract - 実体はない、インターフェイス的にベースクラスに定義するものっぽい

Monobihaviorシングルトンの書き方

参考 http://albatrus.com/main/unity/7517

//DataManagerの部分は、シングルトンにするクラス名を指定して下さい。
static public DataManager instance
void Awake ()
{
 if (instance == null) {

     instance = this;
     DontDestroyOnLoad (gameObject);
 }
 else {

     Destroy (gameObject);
 }

}
//使うとき
DataManager.instance.score = 100;

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16