C#基础
cpcpc
奋斗ing...
展开
-
浅谈静态字段与静态构造函数之间的初始化关系以及执行顺序
偶然看到一道面试题,题目如下:public class A{ public static int X; static A() { X = B.Y + 1; }} public class B { public static int Y = A.X + 1; static B()转载 2010-04-16 09:17:00 · 717 阅读 · 0 评论 -
泛型(二)--泛型委托
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 泛型委托{ delegate void StackEventHandler(T sender,U eventArgs); //定义委托 //delegate void原创 2010-05-04 14:45:00 · 571 阅读 · 0 评论 -
泛型(一)
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 泛型_一__什么是泛型{ public class GenericList { private class Node {原创 2010-05-04 10:22:00 · 397 阅读 · 0 评论 -
向存在的文件中写入数据
在项目中碰见一个问题:通过服务器传送文件。具体过程:1,现根据文件大小判断硬盘上是否有足够大的空间。2,根据文件大小建立一个空的文件,占用这个空间。3,开始接收文件,存放到刚才建立的文件中,及逐步的使用文件数据替代空文件。解决方案:1,判断硬盘剩余空间大小:using System.Runtime.InteropServices;[DllImport("kernel32.d原创 2012-02-08 15:38:23 · 2157 阅读 · 0 评论 -
泛型(三)--泛型接口
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 泛型接口{ public class GenericList : System.Collections.Generic.IEnumerable { //原创 2010-05-04 14:47:00 · 487 阅读 · 0 评论 -
.NET/C#中对自定义对象集合进行自定义排序的方法
一个集合可否排序,要看系统知不知道排序的规则,像内建的系统类型,int ,string,short,decimal这些,系统知道怎么排序,而如果一个集合里面放置的是自定义类型,比如自己定义了一个Car类型,要把它排序,系统是不知道怎么办的。那么,如何告知系统排序的规则呢?有以下几种方法:1:对类实现IComparable接口,示例如下:using System;using Syst转载 2012-02-02 11:18:37 · 2755 阅读 · 1 评论 -
两种将中文转成中文拼音的方法
两种将中文转成中文拼音的方法个人倾向于使用第二种方法。第一种: /// /// Hz2Py 的摘要说明/// public class Hz2Py { public Hz2Py() { // // TODO: 在此处添加构造函数逻辑 //转载 2011-12-08 14:39:08 · 4222 阅读 · 0 评论 -
DotNet 经典面试题(在面试中提炼总结所出,面试的朋友必备)
.Net基础常见 什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS、CLR分别作何解释?答: 1应用程序域可以理解为一种轻量级进程。起到安全的作用。占用资源小2.unsafe:非托管代码。不经过CLR运行。转载 2011-09-13 21:12:01 · 907 阅读 · 0 评论 -
继承的构造函数的知识遗漏
类的默认构造函数是无参构造函数,子类继承父类时需要首先调用父类构造函数,所以当父类函数中定义了有参构造函数后,子类必须调用base调用父类的构造函数。 构造函数是在创建给定类型的对象时执行的类方法。构造函数具有与类相同的名称,它通常初始化新对象的数据成员。转载 2011-09-09 13:53:56 · 543 阅读 · 0 评论 -
C#编程语言规范,很重要,很全面
从FxCop归纳出来的一些规范建议下面是根据FxCop整理的.NET代码编写规范,仅供参考。一、 Design(设计)1. Abstract types should not have constructors 抽象类不应该声明构造方法2. Assembl转载 2011-09-09 13:41:25 · 1150 阅读 · 0 评论 -
方法参数关键字:params、ref及out
如果在为方法声明参数时未使用 ref 或 out,则该参数可以具有关联的值。可以在方法中更改该值,但当控制传递回调用过程时,不会保留更改的值。通过使用方法参数关键字,可以更改这种行为。paramsparams 关键字可以指定在参数数目可变处采用参数的方法参数。在方法声转载 2011-09-05 16:09:12 · 738 阅读 · 0 评论 -
yield关键字
yield关键字yield return 语句返回集合的一个元素,并移动到下一个元素上. yield break可停止迭代.using System;using System.Collection;namespace Wrox.ProCSharp.Arrays{ public class HelloCollection { public IEnum转载 2010-05-04 09:52:00 · 697 阅读 · 0 评论 -
类和对象的概念
类(Class) 面向对象思想来源于对现实世界的认知。现实世界缤纷复杂、种类繁多,难于认识和理解。但是聪明的人们学会了把这些错综复杂的事物进行分类,从而使世界变得井井有条。比如我们由各式各样的汽车抽象出汽车的概念,由形形色色的猫抽象出猫的概念,由五彩斑斓转载 2011-09-05 13:58:36 · 854 阅读 · 0 评论 -
Array.Copy 方法 总结
1,从第一个元素开始复制 Array 中的一系列元素,将它们粘贴到另一Array 中(从第一个元素开始)。长度指定为 32 位整数。Visual Basic(声明)Public Shared Sub Copy ( _ s原创 2010-07-19 15:55:00 · 6943 阅读 · 0 评论 -
C#基础:值类型、引用类型与ref关键字
在C#中,ref的意思是按引用传递。可以参考C++:int a = 10, b = 20; void swap(int x, int y) { int temp = x; x = y; y = temp转载 2011-09-05 16:07:33 · 1183 阅读 · 3 评论 -
虚方法virtual详解
从C#的程序编译的角度来看,它和其它一般的函数有什么区别呢?一般函数在编译时就静态地编译到了执行文件中,其相对地址在程序运行期间是不发生变化的,也就是写死了的!而虚函数在编译期间是不被静态编译的,它的相对地址是不确定的,它会根据运行时期对象实例来动态判断要调用的函数,其中那个申明转载 2011-09-05 14:11:38 · 687 阅读 · 0 评论 -
C#基于Lambda递归的阶乘/累加实现
http://www.cnblogs.com/tiscs/archive/2012/02/09/csharp-lambda-recursion.html 前天做一道面试题,要我用C#实现累加,想用Lambda写,结果面试官急匆匆地过来,Timeout了,可能是面试官的午饭时间到了吧。 今天补上吧,温习一下,下次写的要快点。 首先分享一个递归帮助类,写这个类的时候参考了老赵和装配转载 2012-02-10 14:50:58 · 1896 阅读 · 0 评论