假设我有一个名为button
type 的变量,Button
它当然是System.Serializable
。
我希望该变量可以通过检查器分配,所以我做到了public
:
public class SomeScript : MonoBehaviour{
public Button button;
}
这给了我:
现在,我想保持代码的干净和安全(井井有条),这是我需要保留封装的真实原因。
我知道有多种方法可以像在运行时那样检索组件,transform.Find("Some/Genius/TypeUnsafe/Path")
或者GameObject.Find("3 seconds scene iteration").GetComponent(...).
我想避免这种情况。
如何搭配一个变量private access
与它的public access
的检查?
是的,我知道封装是做什么用的!:DI建立某种
—
雅各布
UI
/ API
MVC
/ MVVM
一个巨大的应用程序模式(游戏客户端实际上),我不得不分开UI
从API
。我只需要通过检查器原因来分配值-没有其他方法。Find()
方法是不安全的类型,通过拖放将它们放在一起比较容易。要构建经典的OOP框架确实非常困难,Unity
而且您必须寻找像这样的棘手问题。
请记住,private不能确保变量不受其他脚本的影响。您驾驶室akways与反射或某些指针弄虚作假实现它
—
巴林特
private
并不是要真正阻止第三方进入某个领域,而是要提供一种说法,即“不要隐瞒我真正在做的事情”-也就是说,这主要是一种阻止您访问它。