摘要:1 2 public byte GetXor(byte[] data) 3 { 4 byte CheckCode = 0; 5 int len = data.Length; 6 for (int i = 0; i < len; i++) 7 { 8 CheckCode ^= data[i]; 9 }
阅读全文
摘要:// 获取程序的基目录。System.AppDomain.CurrentDomain.BaseDirectory// 获取模块的完整路径,包含文件名System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName// 获取和设置当前
阅读全文
摘要:前面一篇已经讲述了为什么使用委托,以及使用委托有什么好处,今天再此学习张子扬博客逐步了解委托。 1. 方法作为方法的参数 这个看起来很别扭,和C++中出现函数指针有点类似,只是函数参数是一个指针而已。 public void GreetPeople(string name, *** MakeGree
阅读全文
摘要:首先,我们需要知道,到底在什么情况下必须使用委托和事件呢? 请看下面的场景:首领A要搞一场鸿门宴,吩咐部下B和C各自带队埋伏在屏风两侧,约定以杯为令:若左手举杯,则B带队杀出;若右手举杯,则C带队杀出;若直接摔杯,则B和C同时杀出。B和C袭击的具体方法,首领A并不关心。(完整代码在全文最后。) 有脑
阅读全文
摘要:1. 使用字典原因 通常情况下,我们可以通过int类型的索引号来从数组或者list集合中查询所需的数据。但是如果情况稍微复杂一点:索引号是非int型数据比如string或其他类型该如何操作呢。这个时候我们就可以使用字典了。 2. 什么是字典 顾名思义,字典是一种让我们可以通过索引号查询到特定数据的数
阅读全文
摘要:String 对象是不可改变的。每次使用 System.String 类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间。在需要对字符串执行重复修改的情况下,与创建新的 String 对象相关的系统开销可能会非常昂贵。如果要修改字符串而不创建新的对象,则可以使用 S
阅读全文
摘要:一、静态类 静态类与非静态类的重要区别在于静态类不能实例化,也就是说,不能使用 new 关键字创建静态类类型的变量。在声明一个类时使用static关键字,具有两个方面的意义:首先,它防止程序员写代码来实例化该静态类;其次,它防止在类的内部声明任何实例字段或方法。 1、静态类的主要特性: [1] 仅包
阅读全文
摘要:public class DeleOrLamada { public void ThreadMessage(string data) { string message = string.Format("ThreadName is {0}\nThread ID is {1}", data, Threa
阅读全文
摘要:一、 获取本地时间 //获取日期+时间DateTime.Now.ToString(); // 2008-9-4 20:02:10DateTime.Now.ToLocalTime().ToString(); // 2008-9-4 20:12:12 //获取日期DateTime.Now.ToLongD
阅读全文
摘要:1. 线程创建,启动,阻断,监视线程状态 class Program { public static void Operatefile() { FileStream fileStream = null; if (!File.Exists(@"E:\欣奕华\项目\C#\EX\ThreadEx\log.
阅读全文
摘要:一 、list定义 当我们有很多类型一样的数据时,可以使用数组来进行存储并管理,但是这样的缺点是数组的大小是提前给定的、是固定的。 如果我们有许多类型一样但数量不定的数据, 我们可以使用集合类来进行管理——例如列表List。我们可以使用列表List很方便的添加数据,删除数据以及其他的一些数据操作。L
阅读全文
摘要:关键字enum用于声明枚举,是一种包含一组被称作为枚举数列表已命名常数的不同类型。其最好在直接在命名空间内定义,这样以便命名空间内所有类都可以方便访问。默认情况枚举列表的第一个值是0,依次加1,但也可以自己定义。枚举提供了一种有效的方式来定义可能分配给变量的一组已命名整数常量。 例如,假设你需要定义
阅读全文
摘要:1. 属性结合字段和方法得多个方面,对于对象的用户来说,属性就像字段(这样就可以修改属性值或者访问),对于类的实现者来说,属性包括两个各部分get访问器(用于读取属性)和set访问器(用于设置属性),与字段不同的是属性不会当做变量,故不能够降属性作为ref和out参数传递。 public class
阅读全文
摘要:一 接口 接口只是定义了可由类或结构实现的协定,其可包括方法,属性,事件,索引器,但不提供方法的实现,仅指定必须由实现接口的类或者结构提供。 代码演示: public interface IDataBound { void Bind(string str); } public interface I
阅读全文
摘要:一 重写与隐藏区别 (1)方法重写:就是在基类中的方法用virtual关键字来标识,然后在继承类中对该类进行重写(override),这样基类中的方法已经被重写了,已经失去了功能了。当让基类的对象的引用直接指向继承类的对象时(多态性),调用该方法则是调用的继承类的方法。 (2)方法隐藏:无论基类中的
阅读全文
摘要:1. 属性定义方式与字段类似,但还包括Set和Get两个访问器,其格式如下: public/private <type> Name { get { return variable; } set { 赋值语句; } } 属性可以使用virtual ,override,abstract关键字,访问器也可
阅读全文