snisn 2021-05-26 14:44 采纳率: 100%
浏览 51
已采纳

Untiy中A继承了B,B继承了MonoBehaviour,怎么在A和B之间传递初始化参数?

官方不推荐在继承了MonoBehaviour的类里使用构造函数,网上很多前辈推荐使用Start或Awake来对这些类进行初始化,但是,我想在父类和子类之间传递初始参数,请问该怎么做呢?实在是思路枯竭了……望各位大神赐教,谢谢!举例如下:

//这个类继承了MonoBehaviour
public class Man : MonoBehaviour
{
	string id;
	string name;
	
	public Man(string idTemp,string nameTemp)
	{
		id=idTemp;
		name=nameTemp;
	}
}


//这个类继承自Man
public class BatMan : Man
{
	Vector3 vPosition;
	double dMaxSpeed;
	
	public Man(Vector3 vPositionTemp,double dMaxSpeedTemp) : base(idTemp,nameTemp)
	{
		vPosition=vPositionTemp;
		dMaxSpeed=dMaxSpeedTemp;
	}
}


//从这个类创建BatMan
public class ButtonClick()
{
	BatMan(传入4个参数);
}

展开全部

  • 写回答

3条回答 默认 最新

  • Jo.H 2021-05-28 13:01
    关注

    在Unity里一般不能自己New MonoBehaviour

    你是想为新生成的BatMan传入4个参数吗?

    可以理解成新创建的一个带有BatMan的GameObject,使用GetComponent获取BatMan,如果没有的话你可使用AddComponent添加个一个BatMan,然后调用BatMan中你自己定义的方法传入你的参数就可以了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    snisn 2021-05-29 00:55

    谢谢你的解答。我最后也是使用了类似的方法来实现的:在父类里面定义一个初始化的虚方法Init,子类去重写就行,需要用到父类的就调用base.Init,不需要就彻底覆盖掉

    回复
查看更多回答(2条)
编辑
预览

报告相同问题?

悬赏问题

  • ¥15 我如果只想表示节点的结构信息,使用GCN方法不进行训练可以吗
  • ¥15 GPTs营销指令提示词和创建方案
  • ¥15 QT6将音频采样数据转PCM
  • ¥15 本地安装org.Hs.eg.dby一直这样的图片报错如何解决?
  • ¥15 下面三个文件分别是OFDM波形的数据,我的思路公式和我写的成像算法代码,有没有人能帮我改一改,如何解决?
  • ¥15 Ubuntu打开gazebo模型调不出来,如何解决?
  • ¥100 有chang请一位会arm和dsp的朋友解读一个工程
  • ¥50 求代做一个阿里云百炼的小实验
  • ¥15 查询优化:A表100000行,B表2000 行,内存页大小只有20页,运行时3页,设计两个表等值连接的最简单的算法
  • ¥15 led数码显示控制(标签-流程图)
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部