unity自用7 #继承

当我们创建一个player时,设置了刚体,转向,检测地面等方法或属性;

而当我们创建其他角色或敌人时,也要用到这些东西。

为此,我们可以创建一个“模板”,方便之后引用这些方法或属性。

如:

public class entity : MonoBehaviour

public class Player : entity

 entity类继承了MB类,而Player类继承了entity类

那么Player类就能以entity类为模板进行扩充

另外,在“模板”类中,所有的属性和方法前面都要以protected为前缀

如:

[SerializeField] protected float groundcheck;

 protected Rigidbody2D rb;

protected bool isground;

protected virtual void Start()
{
    rb = GetComponent<Rigidbody2D>();
    a = GetComponentInChildren<Animator>();

}

 protected virtual void checkground()
 {
     isground = Physics2D.Raycast(gc.position, Vector2.down, groundcheck, whatisground);
 }

当一个方法被标记为protected时,它可以在定义了该方法的类内部或者该类的子类中被访问。这意味着可以在继承了包含protected方法的类的子类中访问和重写这个方法。

同时,方法的前面要加上virtual,表示该方法可以在子类中被重写。

protected override void Start()
{
    base.Start();
}

在子类中,通过override对父类进行重写,注意要保留父类的名称和修饰符。 

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值