.Net 进阶
文章平均质量分 58
Cording Home
这个作者很懒,什么都没留下…
展开
-
.Net 集合数据类型总结
一、数组 分配在连续的内存,不能随意扩展,插入数据比较慢 性能高,索引查找快,数据再多性能也没有影响int[] array = new int[4];string[] array = new string[]{"123","456"};二、 ArrayList 可变长度的,不限制类型,可以放置不同类型,所以原创 2018-09-04 22:08:54 · 1093 阅读 · 0 评论 -
利用 yield 进行延迟加载
yield是迭代器的状态机,可以做到延迟加载,按需获取var numbers = GetNumbers();foreach(var item in numbers){ //此处如果只取3个,则GetNumber是里面的循环只会执行到3}public IEnumerable<int> GetNumbers(){ for(int i=0;i<10;i++)...原创 2018-09-04 23:11:49 · 886 阅读 · 0 评论 -
dynamic
一、dynamic可以隐式转换程任何类型object iObject = 123;dynamic dObject = iObject;int iResult = dObject;二、可以无视编译器的检查,运行的时候才确定类型object oTest = new Test();dynamic dTest = oTest;dTest.Id = 3;dTest.Name = ""...原创 2018-09-04 23:31:51 · 247 阅读 · 0 评论 -
反射
一、反射是.Net Framework提供的一个帮助类库,可以访问dll的metadata,并且使用它。通过反射,可以在运行时获得程序或程序集中每一个类型(包括类、结构、委托、接口和枚举等)的成员和成员的信息。二、反射的用途使用Assembly定义和加载程序集,加载在程序集清单中列出模块,以及从此程序集中查找类型并创建该类型的实例。 使用Module了解包含模块的程序集以及模块中的类等...原创 2018-09-03 11:06:20 · 163 阅读 · 0 评论 -
.Net 泛型总结
一、泛型概念 泛型是C# 2.0和CLR的一个特性,在1.0时代,声明一个可以给多个类型参数共同使用的方法很繁杂,需要编写多个方法而参数不同,当然可以使用object,但通过object会发生装箱拆箱,降低性能。而泛型为.Net引入了类型参数的概念,使得声明类和方法时不必指定具体的类型参数,其具体类型可以延迟到客户代码当中实现。二、如何声明和使用泛型 声明...原创 2018-09-02 14:28:33 · 4073 阅读 · 0 评论 -
.Net 异步多线程总结
一、进程与线程进程是指一个程序在计算机上运行时,全部的计算资源的合集;线程是程序的最小执行单位,包含计算资源,任何一个操作的响应都是线程来完成的;多线程是指多个线程并发执行。多线程虽然能够提升程序的运行效率,但是消耗的资源更多,所以线程并不是越多越好。二、同步和异步同步和异步都是针对方法而言;同步方法指的是程序按照顺序执行,必须等待上一操作完成后才能继续往后执行;异步方法指...原创 2018-09-02 01:36:50 · 6779 阅读 · 0 评论 -
面向切面编程AOP
一、传统的面向对象编程OOP万物皆对象,专注于类与类之间的交互,由类组成各种功能,功能组咸亨组件,组件又组成系统,适合做大型项目。但是,由于类是静态的,封闭的,任何需求的变化都会对其带来影响,而在项目的开发过程中,良好的设计是尽量避免对已有类型的更改,因此再前辈的经验中,总结了GOF23种设计模式, 虽然设计模式原则可以解决类与类之间的交互稳定,但如果类的自身变化,需要增加功能需求,则设计模式...原创 2018-09-25 23:34:26 · 228 阅读 · 0 评论