有没有办法获取创建类的类的实例?
例如,我有以下示例:
public class MyClass {
private GameObject initiator;
public MyClass(){
initiator = // Get the value here
}
}
然后,此课程会从上方创建new MyClass
和initiator
,并将MyInitiator
的实例存储在initiator
中。
public class MyInitiator : MonoBehaviour {
void Start() {
new MyClass();
}
}
我知道我可以将this
作为参数传递或创建属性并将其设置为这样,但我希望避免这样做,并让它自动执行或使用某种逻辑如果可能,请在MyClass
内。
答案 0 :(得分:0)
我认为除了你建议的两种方式之外还有其他任何方式。
我会使用this
作为构造函数参数,并使用方法创建一个新实例,如下所示:
public class MyClass
{
private GameObject initiator;
public MyClass(GameObject initiator)
{
this.initiator = initiator;
}
}
public class MyInitiator : MonoBehaviour
{
void Start()
{
MyClass first = NewMyClass();
MyClass second = NewMyClass();
// ...
}
private MyClass NewMyClass()
{
return new MyClass(this);
}
}