Instantiate()
是一个静态方法。
我们如何在不使用点 (.) 运算符的情况下调用 Instatiate()
而不是键入 Object.Instantiate()
?
例如,当我们调用
GetAxis()
是Input
类的静态方法时,我们键入Input.GetAxis()
但是我们怎么能只键入Instantiate()
而没有点(.)运算符?
所有 Unity MonoBehavior 脚本都可以在没有点运算符的情况下立即访问此方法。就这样称呼它:
void MethodName(){
Instantiate(<arguments>);
}
在继承自
Object
的类之外执行此操作的方法是将其静态导入到您的文件中:
using static UnityEngine.Object;
class Foo
{
void Foop()
{
Instantiate(null);
}
}
等同于
class Foo
{
void Foop()
{
Object.Instantiate(null);
}
}
在这种情况下,它并不像您所说的那样简单地限定您的静态调用那么清楚,在您不属于对象继承层次结构的情况下,我真的看不到不简单地键入
Object.
有什么好处。