08 2010 档案
摘要:模型鸭子,既有不飞的又能飞的,有多种颜色的。而且以后还会有新的需求。对于此如何用程序来既能准确表示而且又有很好的扩展性。将会变化的部分用接口的形式封装起来的,好让其他部分不会受到影响。第一步:将会变的和不变的分开:这里只拿出不飞和能飞拿出来举例。第二步:设计鸭子的行为:为鸭子建立一个飞的接口类。建立2个类表示:不飞,能飞。整合鸭子行为策略模式:是指将算法封装起来的,让它们之间可以相互替换。
阅读全文
摘要:读取xml某节点的某个属性时,则先将xmlnode 转换成 XmlElement。删除xml某个节点,如果用node.RemoveAll();的话就会留下节点名称,用node.ParentNode.RemoveChild(node);就可以完全清除了。
阅读全文
摘要:将对象转换为字节序列的过程称为对象的序列化。将字节序列恢复为对象的过程称为对象的反序列化。1)它可以将对象序列化成字节永久保存在硬盘中。2)在网络上传送对象的字节序列。.net为我们提供了三种序列化方式:【1】、XML Serializer【2】、SOP Serializer【3】、BinarySerializer要使一个类可以序列化,必须对类标记Serializable。例子:class1.cs...
阅读全文
摘要:在多线程或单线程任务中,让线程带传入参数一直是个麻烦的问题,通常有种方法就是以类,对像的变量来传参数,这种方法理解上很简单不过在某些场合使用很麻烦,这里就不介绍了,我们主要介绍一种.NET2.0中新增加的带参数运行线程的方法,示例程序如下:ParameterizedThreadStartParStart = new ParameterizedThreadStart(ThreadMethod); T...
阅读全文
摘要:Assembly assembly = Assembly.Load("bll"); Type type = assembly.GetType("bll.Class2"); object obj = Activator.CreateInstance(type); //创建类的实例 bll.Class2 c2 = (bll.Class2)obj; this.Label1.Text = type.Inv...
阅读全文
摘要:.net应用程序由几个部分组成:程序集(Assembly)、模块(model)、类型(class).而反射则是一种在程序运行时获取程序集、模块、类型的一种编程方式。
阅读全文
摘要:所谓泛型,即通过参数化类型来实现在同一份代码上操作多种数据类型。泛型编程是一种编程范式,它利用“参数化类型”将类型抽象化,从而实现更为灵活的复用。泛型的类型参数T可以看作是一个占位符,它不是一种类型,而仅代表某种可能的类型,在定义泛型时,T出现的位置可以在使用时用任何类型来代替,无需类型转换。因此它避免了装箱和拆箱的性能消耗。因此它具有高效,代码可复用的优点。CLR在运行时...
阅读全文
摘要:正则表达式是一种在搜索文本要匹配的一个或多个字符串的文本模式。表达式匹配/^\s*$/匹配空行。/\d{2}-\d{5}/验证由两位数字、一个连字符再加 5 位数字组成的 ID 号。/<\s*(\S+)(\s[^>]*)?>[\s\S]*<\s*\/\1\s*>/匹配 HTML 标记。下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为:字符说明\将下一字符标...
阅读全文
摘要:string 是不可变的,每次使用string类型对象时,都会在内存中创建一个string对象。这就要为该心对象创建一个新的空间。而stringbuilder是一个字符串容器,有一个缓冲区域。当存储的字符串长度不超过stringbuilder时都会写入到缓冲区。当达到缓冲区的容量时,将自动分配内存并将容量翻倍。这种做法就是减少了内存的申请率。
阅读全文
摘要:题目:显示 早上好,中午好,晚上好的 +名称我们将早上好,中午好,晚上好封装成一个类,利用委托调用对应的方法。class1.cs代码Form1.cs代码早上好,***中午好,***晚上好,***
阅读全文
摘要:匿名方法是指将一段代码块作为委托参数传递给另外一个方法中。匿名方法能访问方法中的变量和类中的成员。使用匿名方法,则不必创建当独的方法,因此减少了实例化委托所需的编码开销。[代码]
阅读全文
摘要:委托是一种类,它定义了方法的类型,使得方法可以当作另外一个方法的参数来传递。这种将方法动态的赋值给参数的做法。可以避免大量使用if else的做法。同时使得程序有很好的扩展性。例:没用委托以前的通常代码:委托真的蛮好用的 。用了委托后的代码:代码我们再精简下:第一次用委托时,必须用=来赋值方法。第二次的话我们可以用“+=”来绑定。取消绑定可以用“-=&rdquo...
阅读全文
摘要:隐式转换:不需要代码中的任何特殊语法,类型转换自动运行。显式转换:需要在代码中对要转换的指定类型。隐式转换短->长子类->父类值类型->引用类型显式转换长->短父类->子类引用类型->值类型变换投射装/折箱
阅读全文
摘要:数组是一种数据结构。数组包含若干相同类型的变量。数组是使用类型声明的。数组具有以下属性:数组可以一维、多维或交错的。数值数组元素的默认值设置为零,而引用元素的默认值设置为 null。交错数组是数组的数组,因此,它的元素是引用类型,初始化为null。数组的索引从零开始:具有n个元素的数组的索引是从0到n-1。数组元素可以是任何类型,包括数组类型。数组类型是从抽象基类型 System.Array派生的...
阅读全文

浙公网安备 33010602011771号