方法的模式

首先,什么是方法。

多行代码,组成了一个方法,所以,方法,本来不是一种类型;

但是,如果不是一种类型,就无法实现使用左值=右值表达式,进行赋值。

所以,需要一种能标识方法的类型,然后,创建这种表示方法的变量。

delegate就是方法的类型;

区分一个方法,需要判断三个属性值, 我定义一个表示方法的类。

public class Method
{
    public string MethodName{get;set;}
    public List<object> parameters{get;set;}
    public object ResturnValue{get;set;}  
}

有没有发现

方法是鸭子模型

方法可以接收任何符合签名的方法,

无论方法是属于谁,class,struct,interface,delegate lambda expression都合法, 无论是否有具体实现,比如接口的方法签名,是合法的;

合法的理由, 就是,他们长的差不多,具有相同的名字,相同的参数,相同的返回值。

这回,看出来了。这就是一个鸭子模型。

 

posted @ 2022-06-27 20:31  猫眼三姐妹  阅读(46)  评论(0编辑  收藏  举报