摘要: 迭代器 迭代器是程序设计的软件设计模式 迭代器模式提供一个方法顺序访问一个聚合对象中的各个元素而不暴露其内部的标识 在表现效果上看是可以在容器对象上遍历访问的接口 设计人员无需关心容易对象内存分配的实现细节 可以用foreach遍历的类都是实现了迭代器的 标准迭代器的实现方法 //关键接口:IEnu 阅读全文
posted @ 2025-03-14 20:47 cannedmint 阅读(52) 评论(0) 推荐(0)
摘要: 特性 特性是一种允许我们向程序的程序集添加元数据的语言结构 特性本质是一个类,可以利用特性类为元数据添加额外信息 自定义特性 //继承特性基类 class MyCustomAttribute : Attribute { //特性中的成员,一般根据需求来写 public string info; pu 阅读全文
posted @ 2025-03-14 19:55 cannedmint 阅读(6) 评论(0) 推荐(0)
摘要: Activator 用于快速实例化对象的类 用于将Type对象快捷实例化为对象 先得到Type然后快速实例化一个对象 //无参构造函数 Type testType = typeof(Test); Test testObj =Activator.CreateInstance(testType) as 阅读全文
posted @ 2025-03-14 18:15 cannedmint 阅读(11) 评论(0) 推荐(0)
摘要: 反射的概念 程序正在运行时,可以查看其他程序集或者自身的元数据 一个运行的程序查看本身或者其他程序元数据的行为就叫反射 反射的作用 反射可以在程序编译后获得信息,提高程序的拓展和灵活性 class Test { private int i =1; public int j =0; public st 阅读全文
posted @ 2025-03-14 16:59 cannedmint 阅读(6) 评论(0) 推荐(0)
摘要: 什么是编译器 将源语言程序翻译为目标语言程序 源语言程序:Csharp,C++等 目标语言程序:二进制数表示的伪机器代码写的程序 预处理器指令 预处理器指令指导编译器在实际编译开始之前对信息进行预处理 预处理器指令都是以#开始 预处理器指令不是语句,所以它们不以分号结束 折叠代码块就是预处理器指令 阅读全文
posted @ 2025-03-14 15:51 cannedmint 阅读(12) 评论(0) 推荐(0)
摘要: 线程 操作系统能够进行运算调度的最小单位 它被包含在进程之中,是进程中的实际运作单位 多线程 可以通过代码开启新的线程,可以同时运行代码的多条管道就叫多线程 多线程相关语法 //线程类 Thread //申明一个新的线程 //线程执行的代码需要封装到一个函数中 static void NewThre 阅读全文
posted @ 2025-03-14 14:26 cannedmint 阅读(6) 评论(0) 推荐(0)
摘要: 协变逆变 协变: 因为父类可以装子类,所以子类变成父类是协变 比如 string 变成 object 逆变: 父类可以装子类,但子类不能装父类,所以父类变成子类是逆变 比如 object 变成 string 协变和逆变是用来修饰泛型的 协变: out 逆变: in 用于在泛型中修饰泛型字母,只有泛型 阅读全文
posted @ 2025-03-14 13:36 cannedmint 阅读(14) 评论(0) 推荐(0)