不論是JavaScript還是C#程序,我們已經(jīng)習(xí)慣了采用如下所示的“鏈?zhǔn)秸{(diào)用”的方式進(jìn)行編程,這樣確實(shí)會(huì)使我們的程序變得很精練。
1: new Foo()
2: .UseXxx()
3: .UseZzz()
4: .UseZzz()
5: .Invoke();
采用這種鏈?zhǔn)秸{(diào)用方式的很多方法都是擴(kuò)展方法,比如上面所示的UseXxx、UseYyy和UseXxx方法就是采用如下形式定義的擴(kuò)展方法。
1: public interface IFoo
2: {
3: void Invoke();
4: }
5:
6: public class Foo : IFoo
7: {
8: public void Invoke()
9: {}
10: public void Execute()
11: {}