Delegate(委托):可以简单理解为C++的函数指针,可以作为参数传递
使用delegate关键字声明一个委托,通过 += 或 -= 添加(取消)监听方法,通过=清空监听方法,通过Invoke()调用delegate
Event(事件):使用event关键字声明事件,是对委托的再次封装,区别是安全性更高,事件规定只能在声明事件的类内进行=赋值(清空)和调用(invoke),但是可以在外部类进行添加(取消)监听方法
Action :一种预定义好的带泛型的delegate,可以设置0-16个参数,无返回值
UnityAction:对Action的再次封装。是更适合在Unity中使用的一种泛型委托。
UnityEvent:可以在Inspector窗口添加的Event
Func :带返回值的Action