摘要:
.Net中的协变和逆变关于协变和逆变要从面向对象继承说起。继承关系是指子类和父类之间的关系;子类从父类继承所以子类的实例也就是父类的实例。比如说Animal是父类,Dog是从Animal继承的子类;如果一个对象的类型是Dog,那么他必然是Animal。协变逆变正是利用继承关系 对不同参数类型或返回值类型 的委托或者泛型接口之间做转变。我承认这句话很绕,如果你也觉得绕不妨往下看看。如果一个方法要接受Dog参数,那么另一个接受Animal参数的方法肯定也可以接受这个方法的参数,这是Animal向Dog方向的转变是逆变。如果一个方法要求的返回值是Animal,那么返回Dog的方法肯定是可以满足其返回 阅读全文
摘要:
概述在C#中,有且仅有两种数据类型:值类型和引用类型。换言之,一个变量要么是值类型,要么是引用类型。像我们常见的数据类型(int,float,double)、结构、枚举等等都属于值类型,而像类、接口、委托等都属于引用类型。所以,要想深入的了解.net framework的一些原理性的知识,值类型与引用类型是跨不过去的一道门槛。正如Jeffrey Richter(CLR via C#作者)所说:“不理解引用类型和值类型区别的程序员将会把代码引入诡异的陷进和诸多的新能问题”。下面,我们将一步步摸透这俩者的真面目。C#中变量的类型取决于什么?在C#中,变量是值类型还是引用类型,取决于其基本数据类型。 阅读全文
摘要:
时间过得真快,转眼间已经工作将近五个月了!五个月说短也不短说长呢也不长,五个月没什么惊天动地的大事发生我在公司也没做出什么业绩,只不过每天早来晚归混混去日子罢了!最近的几件事情却使我想到了很多,有时想写些什么却又不知道如何下笔!最近也比较懒,将近一个月没和家里联系也好久没和朋友们联系了,不联系不代表忘记不代表不想念,希望你们每天都开开心心、快快乐乐的! 上周被派到市公安局做110指挥中心平台开发,主要是和地图相关的一些操作,我虽然在公司已经呆了将近五个月,公司主要三维地图相关的开发,而我却对地图的相关操作一点也不会,说起来真是惭愧的无地自容,原因是多方面的,但最主要的还是自己!!!虽然已工作. 阅读全文