服务于区块链开拓者

www.zhidnet.com

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  c#权威指南

摘要:1 数组是引用类型的变量,元素保存在托管堆中元素的引用保存在栈中。交错数组和矩形数组的使用格式如下: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace ArrayTest 7 { 8 class Program 9 {10 static void Main(string[] args)11 {12 string[][] array=new string[2]... 阅读全文
posted @ 2012-12-06 17:01 知点网 阅读(244) 评论(0) 推荐(0)

摘要:System;using System.Collections.Generic;using System.Linq;using System.Text;namespace XNdemo{ class Program { static void Main(string[] args) { ISample<ChildClass> child = new Sample<ChildClass>(); ISample < BaseClass > baseclusing ass = child;//协变 ... 阅读全文
posted @ 2012-12-06 14:14 知点网 阅读(213) 评论(0) 推荐(0)

摘要:扩展方法必须是静态的方法,并且扩展方法必须定义在静态的类中。但是不是通过静态类名.静态方法的形式调用该扩展方法。而是像类的实例调用类中的成员方法一样去调用扩展方法。和类中的实例方法的调用形式是一样的。并且扩展方法只能有实例调用,业就是说目标类不能是静态类使用格式如下: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace ExtendsMethod 7 { 8 class ExtendsMethod 9 {10 ... 阅读全文
posted @ 2012-12-06 10:44 知点网 阅读(240) 评论(0) 推荐(0)

摘要:事件实际上就是一种委托,根据使用的委托类型的不同可以使用自定义委托类型事件,也可以使用预定义委托类型事件PublicdelegatevoidEventHandler(Objectsneder,EventArgse);是预定义委托EventHandler的委托签名Sender负责保存触发事件的对象的引用,e负责保存事件数据使用格式:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceEventTest{classProgram{staticvoidMain(string[]a 阅读全文
posted @ 2012-12-05 10:48 知点网 阅读(644) 评论(0) 推荐(0)

摘要:1结构式值类型,在当做参数传递和赋值时使用的是值传递,对所有对象的值的复制,不会影响到原来的对象。2结构都有一个与定义的无参构造函数,此构造函数不允许删除和重定义,并且该无参构造函数会一直存在。不会因为定义其他的;有参构造函数就消失3要调用结构的实例构造函数就必须使用new运算符,如果未使用new运算符,那么结构的数据成员就是未分配状态,在分配之前不能进行访问。,在为调用new时除非显示的设置了数据成员的值否则不能使用数据成员,除非所有数据成员都以设置否则不能调用任何函数成员。4结构的静态构造函数不能有任何访问修饰符和参数,静态构造函数不能访问实例成员,静态构造函数无法直接调用类的静态构造函数 阅读全文
posted @ 2012-11-27 13:46 知点网 阅读(189) 评论(0) 推荐(0)

摘要:1接口中只包含方法,属性,事件,索引器的签名不能包含实现,接口中不能包含字段,常量,运算符,实例构造函数,析构函数,和任何静态成员。接口的成员默认是public的且不可再显示声明为public的,接口的声明实际上是抽象的属性和索引器的签名必须包含完整的get和set访问器可以再基类中实现作为接口的实现,在派生类中不需要再次实现接口中的为实现成员,可以直接使用派生类像上造型为接口引用,然后使用接口引用调用接口在基类中实现的为实现成员。使用格式如下:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Te 阅读全文
posted @ 2012-11-27 10:55 知点网 阅读(189) 评论(0) 推荐(0)

摘要:1使用new运算符隐藏基类成员:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceInhirateTest{classBaseClass{publicstringfielda="inbaseclass";publicstaticintidentity=100;publicstaticvoidbaseTest(){Console.WriteLine("testbaseofBaseClass");}publicvoidsayHi(){C 阅读全文
posted @ 2012-11-26 17:32 知点网 阅读(181) 评论(0) 推荐(0)

摘要:1c#语言是经过两次编译的由源代码编译为微软中间语言然后在编译为机器语言有jit完成最后的编译2进制转换函数convert.toInt32(“1110011”,2)将2进制转换为10进制数,对于8或是16进制数转换为10进制时用法相同同样10进制数转换为2,8,16进制数时使用convert.tostring(89,2);将89转换为2进制数同样可以修改基数2 将其转化为8 或16进制数冒泡法,快速排序发,费波那歇数列3索引器的使用目的就是为了访问类中的数组或是集合类 的成员变量,对应私有的数组或是集合类的成员变量不能直接访问,但如果在java中可以使用访问器遍历即可。但是在c#中没有针对数组 阅读全文
posted @ 2012-11-25 12:07 知点网 阅读(465) 评论(0) 推荐(0)

摘要:1protected访问级别限制访问可以使自身类或者是该类作为基类的派生类时可以直接访问,即子类可以访问父类的protected数据成员2静态成员变量只能通过类来访问,不能使用类的实例化对象去访问类中的静态变量。静态变量时在程序集装载时分配内存空间的,而实例字段是在类实例化时分配内存空间的。3枚举类型的实例字段在初始化时的默认值是枚举变量下标为0的元素。结构体在初始化时默认为值类型变量全部初始化为0引用类型变量初始化为null4反汇编程序sdkil5c#中的字段,属性的使用方法,与java中的属性访问方法完全不同usingSystem;usingSystem.Collections.Gener 阅读全文
posted @ 2012-11-23 14:57 知点网 阅读(166) 评论(0) 推荐(0)

摘要:1参数数组的使用关键字params类似于可变长数组和可选参数使用格式如下usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceConsoleApplication4{classmethodStample{staticvoidMain(string[]args){methodStamplems=newmethodStample();ms.DoSomething("a");ms.DoSomething("b",1);ms.DoSomethi 阅读全文
posted @ 2012-11-21 11:34 知点网 阅读(295) 评论(0) 推荐(0)

摘要:在c#中实现接口不是使用关键字implements 而是使用c++中的接口实现方法“:”来实现2引用类型 的显示转换只转换栈中的引用值对于堆中的对象的数据类型和值没有任何影响对于引用的 转换主要是有基类到派生类的转换、类到其实现接口的转换,system.array到任何数组类型 的转换,SYSTEM.delegate类型到委托类型的转换3赋值运算符和条件运算符是左结合运算符其他都是右结合运算符4c#支持操作运算符的重载,但是重载运算符的操作数只能是对象或自定义结构体的引用所有重载运算符均为类的静态方法且必须是使用public进行修饰的using System;using System.Coll 阅读全文
posted @ 2012-11-20 14:46 知点网 阅读(194) 评论(0) 推荐(0)