摘要:
在介绍事件之前,我们先讲解委托,然后由委托衍生讲解事件。 现有这样的需求:要求在猫叫之后,执行狗哭,老鼠跑,孩纸哭的动作。 初步的实现如下: class Program { static void Main(string[] args) { Cat cat = new Cat(); cat.Miao 阅读全文
摘要:
委托的引入 当我们要实现一个简单的对不同国籍的人SayHi的功能。 初想的方案: //那如果此时是不同国家的人打招呼。增加了美国跟日本 /// <summary> ///SayHi/// </summary> /// <param name="name"></param> /// <param na 阅读全文
摘要:
特性定义 MSDN的描述:使用特性,可以有效地将元数据或声明性信息与代码(程序集、类型、方法、属性等)相关联。 将特性与程序实体相关联后,可以在运行时使用反射这项技术查询特性。 参考此处作者的解释 https://www.cnblogs.com/chenxizhaolu/p/9497768.html 阅读全文
摘要:
反射的定义 MSDN定义:反射提供描述程序集、模块和类型的对象(Type类型)。 可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型,然后调用其方法或访问器字段和属性。 如果代码中使用了特性,可以利用反射来访问它们。 一共三句话。 第一句意思是可以利用反射提供的API来获 阅读全文
摘要:
泛型类型约束 简言之:对泛型类型进行约束,细化,限定。 MSDN的定义:泛型定义中的 where 子句指定对用作泛型类型、方法、委托或本地函数中类型参数的参数类型的约束,意思就是可以有泛型类、泛型方法、泛型委托或泛型接口四类【即where可以写在这4种后面】。 约束可指定接口、基类或要求泛型类型为引 阅读全文
摘要:
为何引入泛型 当我们要对不同类型的参数执行类似的方法时:如下所示功能打印传入参数的相关信息。 class CommonMethdod { /// <summary> /// show int /// </summary> public static void ShowParam(int iParam 阅读全文