我想使用私有内部类 MonoBehaviour
作为类(也是 MonoBehaviour
)的内部实现的一部分。简化为基本要素:
public class OuterClass : MonoBehaviour {
public void SomeMethod(GameObject go) {
go.AddComponent<InnerClass>();
}
private class InnerClass : MonoBehaviour {
}
}
这似乎一切正常,没有错误或警告。但它似乎也违反了 Unity documentation 中的声明:
<块引用>类名和文件名必须相同才能启用脚本 要附加到游戏对象的组件。
这是违反该规则的问题吗?如果是这样,问题是什么?我知道这意味着脚本在编辑器中不可见,但这正是我想要的:除了它的封闭类之外,它永远不应该被任何东西添加。