public class A : MonoBehaviour
{
    public static A _instance;
    public Button btn;
    public delegate void OnClickChangedEvent();
    public event OnClickChangedEvent OnClickChanged;
    void Awake()
    {
        _instance = this;
        btn = GameObject.Find("Button").GetComponent<Button>();
        btn.onClick.AddListener(OnClick);
    }
    public virtual void Start()
    {
       
    }
    //点击方法
    public virtual void OnClick()
    {
        OnClickChanged();
    }
}
public class B : A {
    public override void Start()
    {
        base.Start();
    }
    public override void OnClick()
    {
        base.OnClick();
    }
}
public class C : MonoBehaviour
{
    void Start()
    {
        A._instance.OnClickChanged += OnClick_C;
    }
    public void OnClick_C() { }
}
B类继承A类
C类注册事件到A类中
点击按钮就运行A B C 的点击方法
以上运行没有问题,但是不确定这样会不会有问题?消不消耗资源?谢谢!