- 18
- 0
- 约5.36万字
- 约 268页
- 2019-04-19 发布于湖北
- 举报
泛型中的静态构造函数 静态构造函数的规则:只能有一个,且不能有参数,他只能被.net运行时自动调用,而不能人工调用。 泛型中的静态构造函数的原理和非泛型类是一样的,只需把泛型中的不同的封闭类理解为不同的类即可。以下两种情况可激发静态的构造函数: 1. 特定的封闭类第一次被实例化。 2. 特定封闭类中任一静态成员变量被调用 泛型委托 可以定义自己的类型参数。引用泛型委托的代码可以指定类型参数以创建已关闭的构造类型,就像实例化泛型类或调用泛型方法一样 。 public delegate void DelT(T item); public static void Notify(int i) { } Delint m1 = new Delint(Notify); 泛型委托 引用委托的代码必须指定包含类的类型变量 class StackT { T[] items; int index; public delegate void StackDelegate(T[] items); } private static void DoWork(float[] items) { } public static void TestStack() { Stackfloat s = new Stackfloat(); Stackfloat.StackDelegate d = DoWork; } 泛型--default 在泛型类和泛型方法中产生的一个问题是,在预先未知以下情况时,如何将默认值分配给参数化类型 T: T 是引用类型还是值类型。 如果 T 为值类型,则它是数值还是结构。 解决方案是使用 default 关键字,此关键字对于引用类型会返回空,对于数值类型会返回零。对于结构,此关键字将返回初始化为零或空的每个结构成员,具体取决于这些结构是值类型还是引用类型。 泛型--default public class GenericListT { private class Node { //... public Node Next; public T Data; } private Node head; //... public T GetNext() { T temp = default(T); Node current = head; if (current != null) { temp = current.Data; current = current.Next; } return temp; } } 泛型 示例 Sample\CSharp\Generic\Generics 泛型 练习(抽象类,事件,泛型) 定义一个抽象类Shape,它有抽象属性Area(面积),类Circle和Reactangle是Shape的子类。容器类ShapeContainer中有ListShape集合,它包含Shape,每向ListShape集合中添加一个Shape时触发一个事件ShapeAdded,并提供面积参数。 Sample\CSharp\Generic\Shape1 迭代器 迭代器是可以返回相同类型的值的有序序列的一段代码。 迭代器可用作方法、运算符或 get 访问器的代码体。 迭代器代码使用 yield return 语句依次返回每个元素。yield break 将终止迭代。 可以在类中实现多个迭代器。每个迭代器都必须像任何类成员一样有唯一的名称,并且可以在 foreach 语句中被客户端代码调用,如下所示:foreach(int x in SampleClass.Iterator2){} 迭代器的返回类型必须为 IEnumerable、IEnumerator、IEnumerable 或 IEnumerator。 迭代器 Yield 关键字用于指定返回的值。到达 yield return 语句时,会保存当前位置。下次调用迭代器时将从此位置重新开始执行。 迭代器 public class DaysOfTheWeek : System.Collections.IEnumerable { string[] m_Days = { Sun, Mon, Tue, Wed, Thr, Fri, Sat }; public System.Collections.IEnumerator GetEnumerator()
您可能关注的文档
最近下载
- 2025年辽宁现代服务职业技术学院单招笔试综合素质试题库含答案解析.docx VIP
- 应急预案培训课件丨应急演练的策划与准备.pptx
- 2025年辽宁现代服务职业技术学院单招笔试英语试题库含答案解析.docx VIP
- 深圳建设工程价格信息2016年第12期部分材料参考价格.PDF VIP
- 2025人民日报社招聘64人备考题库及参考答案详解.docx VIP
- 2025年辽宁现代服务职业技术学院单招笔试英语试题库含答案解析(5套100道合辑-单选题).docx VIP
- 人教版(2024)七年级下册英语期末复习必背各单元作文范文.pdf
- 青岛版五四制科学五年级上册全册单元期中期末检测题(含答案).pdf
- 秦 汉 史 主讲人李健胜.ppt VIP
- 老版入团志愿书表格(空白).pdf VIP
原创力文档

文档评论(0)