随笔分类 - c#
摘要:泛型:通过参数化类型来实现在同一份代码上操作多种数据类型。利用“参数化类型”将类型抽象化,从而实现灵活的复用。例子代码:class Program { static void Main(string[] args) { int obj = 2; Test<int> test = new Test<int>(obj); Console.WriteLine("int:" + test.obj); string obj2 = "hello world"; Test<string> test1 = new Test<st
阅读全文
摘要:--注意,在Oracle,存储过程需要放在包下面createorreplacepackagePKG_split_PageisTYPEp_cur1ISREFCURSOR;PROCEDUREproc_split_page(rowcountPerPageNUMBER,--每页面记录条数indexNowPageNUMBER,--当前页码tabNameVARCHAR2,--分页表名totalRowsOUTNUMBER,--总记录数totalPagesOUTNUMBER,--总页数p_cursorOUTPKG_split_Page.p_cur1--游标,用于返回结果集);endPKG_split_Page
阅读全文
摘要:索引器在语法上方便您创建客户端应用程序可将其作为数组访问的类、结构或接口。要声明类或结构上的索引器,请使用 this 关键字,如下例所示:public int this[int index] // Indexer declaration{ // get and set accessors}实例1class TempRecord{ // Array of temperature values private float[] temps = new float[10] { 56.2F, 56.7F, 56.5F, 56.9F, 58.8F, 61.3F, 65.9F, 62.1F, ...
阅读全文
摘要:接口具有下列属性:接口类似于抽象基类:实现接口的任何非抽象类型都必须实现接口的所有成员。不能直接实例化接口。接口可以包含事件、索引器、方法和属性。接口不包含方法的实现。类和结构可继承多个接口。接口自身可从多个接口继承。
阅读全文
摘要:继承用于创建可重用、扩展和修改在其他类中定义的行为的新类。其成员被继承的类称为“基类”,继承这些成员的类称为“派生类”。派生类只能有一个直接基类。但是,继承是可传递的。如果 ClassB 派生出 ClassC,ClassA 派生出 ClassB,则 ClassC 会继承 ClassB 和 ClassA 中声明的成员。说明结构不支持继承,但可以实现接口。有关更多信息,请参见接口(C# 编程指南)。从概念上来说,派生类是基类的专用化。例如,如果您有一个基类Animal,则可以有一个名为Mammal的派生类和一个名为Reptile的派生类。Mammal是一个Animal,Reptile也是一个Ani
阅读全文
摘要:多态性在运行时,在方法参数和集合或数组等位置,派生类的对象可以作为基类的对象处理。 发生此情况时,该对象的声明类型不再与运行时类型相同。基类可以定义并实现虚方法,派生类可以重写这些方法,即派生类提供自己的定义和实现。多态性概述 虚成员当派生类从基类继承时,它会获得基类的所有方法、字段、属性和事件。 派生类的设计器可以选择是否重写基类中的虚拟成员。继承最接近的基类方法而不重写它定义隐藏基类实现的成员的新非虚实现仅当基类成员声明为 virtual 或 abstract 时,派生类才能重写基类成员。 派生成员必须使用 override 关键字显式指示该方法将参与虚调用。 以下代码提供了一个示例:pu
阅读全文
摘要:C#集合类当元素的个数是动态的,就应使用集合类,集合类一般有List<T>,ArrayList、数组、队列、堆栈、链表等。下面来介绍各种集合的使用方法。9.1 列表对象类型的集合主要位于System.collections命名空间中;泛型集合主要是在System.collections.Generic命名空间中,当然List <T>肯定也都在给命名空间下,下面来介绍列表的使用1.列表初始化List<int> intList = new List<int>() { 1, 2 };定义一个int类型的列表。2.添加一个元素intList.Add(3)
阅读全文
摘要:消息队列异步处理作者:飞鸟 | 出处:博客园 | 2011/9/19 5:07:02 | 阅读22次private System.Messaging.MessageQueue mqAsy; private void AsyReceive() { if(MessageQueue.Exists(@".\myQueue")) //creates an instance MessageQueue, which points to the already existing MyQueue mqAsy = new System.Messaging.MessageQueue(@"
阅读全文
摘要:同步和异步的区别转载自:http://blog.csdn.net/lmhcn/archive/2006/10/08/1325941.aspx举个例子:普通B/S模式(同步)AJAX技术(异步)同步:提交请求->等待服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事异步: 请求通过事件触发->服务器处理(这是浏览器仍然可以作其他事情)->处理完毕--------------------------------------------------------------------------------------------------------------
阅读全文
摘要:MSMQ(Microsoft Message Queue,微软消息队列) Asp.Net 简单示例什么是消息队列 消息队列是系统定义的内存块,用于临时存储消息;或是把消息直接发给窗口过程在16位的系统中系统中只有一个消息队列32位的系统中每一运行的程序都会有一个消息队列系统: Windows XP1.安装MSMQ控制面板—>添加安装程序2. 配置MSMQ右键点击新建MQ,属性,可以看到其完整访问路径3.好了,新建一个ASP.net 的应用程序,并添加引用System.Messaging ,编写代码如下using System;using System.Collections.Generi
阅读全文
摘要:反射提供了封装程序集、模块和类型的对象(Type类型)。可以使用反射动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性。System.Reflection.Assembly类Assembly类可以获得程序集的信息,也可以动态的加载程序集,以及在程序集中查找类型信息,并创建该类型的实例。使用Assembly类可以降低程序集之间的耦合,有利于软件结构的合理化。通过程序集名称返回Assembly对象Assembly ass = Assembly.Load("ClassLibrary831");通过DLL文件名称返回Assembly对象As
阅读全文
摘要:.aspx<asp:DropDownList runat="server" name="pointRange" class="selectRange" title="积分范围" ID="SelectPointRange" OnSelectedIndexChanged="SelectPointRange_SelectedIndexChanged" OnTextChanged="SelectPointRange_TextChanged" AutoPost
阅读全文
摘要:class TestArraysClass{ static void Main() { // Declare a single-dimensional array int[] array1 = new int[5]; // Declare and set array element values int[] array2 = new int[] { 1, 3, 5, 7, 9 }; // Alternative syntax int[] array3 = { 1, 2, 3, 4, 5, 6 }; // Declare a two dimensional array int[,] multi.
阅读全文

浙公网安备 33010602011771号