随笔分类 -  C#

摘要:1,聚集索引和非聚集索引的区别 19,重写和重载 2,两个页面之间如何传值 3,session原理 4,哪些方法可以重写 5,get和post的区别 6,Datareader 和dataset的区别 7,装箱和拆箱 8,值和引用的区别 9,什么是数据库事物 10,锁的概念 11,四个join 12, 阅读全文
posted @ 2016-09-19 22:54 小-黑 阅读(385) 评论(0) 推荐(0)
摘要:C#中Trim()、TrimStart()、TrimEnd()的用法Trim()删除字符串头部及尾部出现的空格,删除的过程为从外到内,直到碰到一个非空格的字符为止,所以不管前后有多少个连续的空格都会被删除掉;TrimStart()只删除字符串的头部的空格;TrimEnd()只删除字符串尾部的空格;T... 阅读全文
posted @ 2014-11-26 15:31 小-黑 阅读(246) 评论(0) 推荐(0)
摘要:在C#中,Dictionary提供快速的基于兼职的元素查找。当你有很多元素的时候可以使用它。它包含在System.Collections.Generic名空间中。在使用前,你必须声明它的键类型和值类型。详细说明必须包含名空间System.Collection.GenericDictionary里面的... 阅读全文
posted @ 2014-11-24 15:30 小-黑 阅读(229) 评论(0) 推荐(0)
摘要:http://www.cnblogs.com/michaelxu/archive/2008/04/01/1132633.htmlhttp://blog.csdn.net/wwlearn/article/details/1828365虚方法可以被子类override,抽象方法一定要被子类overrid... 阅读全文
posted @ 2014-08-18 23:19 小-黑 阅读(242) 评论(0) 推荐(0)
摘要:1.string是c#中的类,String是.net Framework的类(在c# IDE中不会显示蓝色) ;2.c# string映射为.net Framework的String ;3.如果用string,编译器会把它编译成String,所以如果直接用String就可以让编译器少做一点点工作 ;... 阅读全文
posted @ 2014-08-15 10:28 小-黑 阅读(1026) 评论(0) 推荐(0)
摘要:托管代码 (managed code) 由公共语言运行库环境(而不是直接由操作系统)执行的代码。托管代码应用程序可以获得公共语言运行库服务,例如自动垃圾回收、运行库类型检查和安全支持等。这些服务帮助提供独立于平台和语言的、统一的托管代码应用程序行为。Unmanaged Code - 非托管代码 在公... 阅读全文
posted @ 2014-08-11 22:58 小-黑 阅读(178) 评论(0) 推荐(0)
摘要:私有程序集 与 共享程序集私有程序集就是不同项目中生成的程序集,仅供本项目使用,或者可以经过配置被某一个其它项目的程序集引用。共享程序集是机器级别的共享程序集,它放置一个叫GAC (Global Assembly Cache)的地方,可以被其它所有的私有程序集所引用。注意,GAC中只能放置.dll文... 阅读全文
posted @ 2014-08-11 22:16 小-黑 阅读(343) 评论(0) 推荐(0)
摘要:在C#中,所有的东西都是对象。因此任何常数也是一个整型对象。这里用到了as,as是C#语言里面的一个关键字。as运算符类似于类型转换,所不同的是,当转换失败时,as运算符将产生空,而不是引发异常。在形式上,这种形式的表达式: expression as type as 运算符只执行引用转换和装箱转换... 阅读全文
posted @ 2014-08-10 22:54 小-黑 阅读(280) 评论(0) 推荐(0)
摘要:一、概念 把对象转化为字节序列的过程称为序列化 把字节序列恢复为对象的过程称为反序列化 序列化又称串行化,是.NET运行时环境用来支持用户定义类型的流化的机制。其目的是以某种存储形成使自定义对象持久化,或者将这种对象从一个地方传输到另一个地方。 .NET框架提供了两种串行化的方式:1、是使用Bin... 阅读全文
posted @ 2014-08-08 10:16 小-黑 阅读(115) 评论(0) 推荐(0)
摘要:浅拷贝:给对象拷贝一份新的对象。浅拷贝的定义—— 只对值类型(或string)类型分配新的内存地址。深拷贝:给对象拷贝一份全新的对象。深拷贝的定义—— 对值类型分配新的内存地址,引用类型、以及引用类型的内http://blog.csdn.net/lai123wei/article/details/7... 阅读全文
posted @ 2014-08-07 22:52 小-黑 阅读(149) 评论(0) 推荐(0)
摘要:一直对委托和事件比较迷惑,关键是没把委托当成一种和类平级的对象来理解,看了这篇文章,已下载茅塞顿开。其中的关键就是把委托理解成第三方,而不是委托请求方和接收方的对象。执行流程:事件触发方在执行自己的行为时触发了事件,而这个事件是已定好的某种委托类型的事件,激活事件时,会调用加载在事件上的行为(这个行... 阅读全文
posted @ 2014-08-06 23:32 小-黑 阅读(459) 评论(0) 推荐(0)
摘要:反射提供了描述程序集、模块和类型的对象(Type 类型)。可以使用反射动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性。如果代码中使用了特性,可以利用反射来访问它们。运行期得到类型信息得到一个Type类型实例的三种方法(因为Type是一个抽象类,所以不能直... 阅读全文
posted @ 2014-08-06 21:49 小-黑 阅读(150) 评论(0) 推荐(0)
摘要:List在创建的时候的时间消耗上明显比ArrayList要大。List对值类型操作不需要进行装箱;ArrayList把所有类型都转换为Object。http://zxianf.blog.163.com/blog/static/30120701201191110319628/ 阅读全文
posted @ 2014-08-04 22:39 小-黑 阅读(680) 评论(0) 推荐(0)
摘要:静态变量与非静态变量的区别如下: 1.内存分配 静态变量在应用程序初始化时,就存在于内存当中,直到它所在的类的程序运行结束时才消亡; 而非静态变量需要被实例化后才会分配内存。 2.生存周期 静态变量生存周期为应用程序的存在周期; 非静态变量的存在周期取决于实例化的类的存在周期。 3.调用方式 静态变... 阅读全文
posted @ 2014-08-01 11:34 小-黑 阅读(1597) 评论(0) 推荐(0)
摘要:Convert.ToInt32、int.Parse(Int32.Parse)、int.TryParse、(int) 四者都可以解释为将类型转换为int,那它们的区别是:Convert.ToInt32 与 int.Parse 较为类似,实际上 Convert.ToInt32 内部调用了int.Pars... 阅读全文
posted @ 2014-07-31 16:23 小-黑 阅读(180) 评论(0) 推荐(0)
摘要:在C#中,方法的参数类型有四种:值类型引用类型输出类型数组型参数值参数:所谓值参数,就是利用值向方法传递参数时,编译程序给实参的值做一份拷贝,并将此拷贝传递给该方法,这样做的结果就是被调用的方法不会修改实参的值,保证了实际值的安全,在调用方法时,如果形参的类型时值类型的话,必须保证实参的类型也是值类... 阅读全文
posted @ 2014-07-30 17:35 小-黑 阅读(323) 评论(0) 推荐(0)
摘要:进程资源分配的最小单位线程 CPU调度基本单位应用程序域比进程所占用的资源要少,可以被看作是一个轻量级的进程。进程(Process)、线程(Thread)、应用程序域(AppDomain)、上下文(Context)的关系如图5.0,一个进程内可以包括多个应用程序域,也有包括多个线程,线程也可以穿梭于... 阅读全文
posted @ 2014-07-21 14:02 小-黑 阅读(214) 评论(0) 推荐(0)
摘要:重写和重载,他们其实是实现类型多态(同一种方法,不同的对象会产生不同的结果)特性的基本技术之一,两种技术貌似而实质截然不同。重载的条件:1.必须在同一个类中2.方法名必须相同3.参数列表不能相同。重写的条件:1. 在不同的类中2. 发生方法重写的两个方法返回值,方法名,参数列表必须完全一致3. 子类... 阅读全文
posted @ 2014-07-21 13:37 小-黑 阅读(322) 评论(0) 推荐(0)
摘要:2.0 版 C# 语言和公共语言运行时 (CLR) 中增加了泛型。泛型将类型参数的概念引入 .NET Framework,类型参数使得设计如下类和方法成为可能:这些类和方法将一个或多个类型的指定推迟到客户端代码声明并实例化该类或方法的时候。例如,通过使用泛型类型参数 T,您可以编写其他客户端代码能够... 阅读全文
posted @ 2014-07-21 13:25 小-黑 阅读(139) 评论(0) 推荐(0)
摘要:一、装箱和拆箱的概念和原理在面试中, 面试官提到装箱和拆箱的问题时,可能很多人想到的第一句话是“装箱是将值类型转化为引用类型的过程;拆箱是将引用类型转化为值类型的过程”。这句话没有问题,但是仅仅只说出这句话而没有下文的话那就不是一个中级.Net程序员的水平。实际上装箱和拆箱这个名字就很形象,“箱”指... 阅读全文
posted @ 2014-07-19 21:40 小-黑 阅读(262) 评论(0) 推荐(0)