第一次看到Action感觉很迷茫,它是干什么的,原来是个委托方法,这样就好理解了
看源码的声明
//
// 摘要:
// 封装一个方法,该方法只有一个参数并且不返回值。
//
// 参数:
// obj:
// 此委托封装的方法的参数。
//
// 类型参数:
// T:
// 此委托封装的方法的参数类型。
public delegate void Action<in T>(T obj);
实际使用如下
public abstract void Execute(string[] args);
protected Action<string> Info { get; private set; }
protected Action<string> Success { get; private set; }
protected Action<string> Warning { get; private set; }
Action<TResult> callback代表callback回调方法是带有一个TResult类型的参数