在unity脚本中使用GetComponent<T>()方法时,泛型T进行了约束,T必须为继承自MonoBehaviour的
类型
假设附着在物体上的脚本文件中(脚本文件名为test2)有test1,test2两个类,test1继承自MonoBehavior,test2继承自
test1.并在此物体上的另外一个脚本中使用GetComponent<T>()方法,当T为test1或test2类型时,GetComponent
方法始终返回的是test2类型。问题是当不在另外的脚本中调用GetComponent而是在test1
中调用GetComponent,如果T为test2时返回的是NULL,
补充:当该脚本文件名为test1时,调用GetComponent方法只能是T为test1,为test2时会报空指针错误。
返回为NULL,就是空指针错误。
类型
假设附着在物体上的脚本文件中(脚本文件名为test2)有test1,test2两个类,test1继承自MonoBehavior,test2继承自
test1.并在此物体上的另外一个脚本中使用GetComponent<T>()方法,当T为test1或test2类型时,GetComponent
方法始终返回的是test2类型。问题是当不在另外的脚本中调用GetComponent而是在test1
中调用GetComponent,如果T为test2时返回的是NULL,
补充:当该脚本文件名为test1时,调用GetComponent方法只能是T为test1,为test2时会报空指针错误。
继承自MonoBehaviour的类不能使用new关键字进行实例化。
返回为NULL,就是空指针错误。