【Unity】インナークラス
インナークラスを使うことで、外部クラスの内部でのみ使用されるようなヘルパークラスを定義することができます
以下は、Unityでインナークラスを使ったシンプルなサンプルです。
ヘルパークラス(Helper Class)とは、他のクラスや関数などの処理を支援するために用意された、補助的な役割を持つクラスのことです。
ヘルパークラスは、主に以下のような役割を持ちます。
- 共通的な処理をまとめることで、コードの重複を避けることができる。
- 複雑な処理をシンプルにすることができる。
- 再利用性が高く、汎用的な処理を行うことができる。
例えば、文字列の操作や日付の処理など、一定の処理をまとめたヘルパークラスを定義することがあります。これにより、同じ処理を複数の場所で行う必要がある場合でも、ヘルパークラスのメソッドを呼び出すだけで済むようになります。
また、外部クラスに密接に関連した処理を行う場合には、インナークラスとして定義することができます。これにより、外部クラスのプライベートフィールドやメソッドにアクセスすることができ、より簡潔なコードを記述することができます。
using UnityEngine;
public class OuterClass : MonoBehaviour
{
// Inner class
private class InnerClass
{
public void PrintMessage()
{
Debug.Log("Hello from InnerClass!");
}
}
private InnerClass inner;
private void Start()
{
// Instantiate inner class
inner = new InnerClass();
}
private void Update()
{
// Call inner class method
if (Input.GetKeyDown(KeyCode.Space))
{
inner.PrintMessage();
}
}
}
上記の例では、OuterClass
というUnityのコンポーネントを定義し、InnerClass
というインナークラスを定義しています。InnerClass
にはPrintMessage
というメソッドがあり、これは単にデバッグログに文字列を表示するだけのものです。
OuterClass
のStart
メソッドで、InnerClass
をインスタンス化しています。そして、Update
メソッドで、スペースキーが押されたときにInnerClass
のPrintMessage
メソッドを呼び出しています。これにより、スペースキーを押すたびに「Hello from InnerClass!」という文字列がログに表示されます。
なお、C#では、インナークラスはpublic
、protected
、internal
、private
のいずれかのアクセス修飾子で定義することができます
ディスカッション
コメント一覧
まだ、コメントがありません