MonoBehaviour 可以是私有内部类吗?

时间:2021-03-25 20:29:40

标签: c# unity3d

我想使用私有内部类 MonoBehaviour 作为类(也是 MonoBehaviour)的内部实现的一部分。简化为基本要素:

public class OuterClass : MonoBehaviour {
  public void SomeMethod(GameObject go) {
    go.AddComponent<InnerClass>();
  }

  private class InnerClass : MonoBehaviour {
  }
}

这似乎一切正常,没有错误或警告。但它似乎也违反了 Unity documentation 中的声明:

<块引用>

类名和文件名必须相同才能启用脚本 要附加到游戏对象的组件。

这是违反该规则的问题吗?如果是这样,问题是什么?我知道这意味着脚本在编辑器中不可见,但这正是我想要的:除了它的封闭类之外,它永远不应该被任何东西添加。

0 个答案:

没有答案