随笔分类 -  01.C#

摘要:1. 虚方法必须有实现部分,抽象方法没有提供实现部分,抽象方法是一种强制派生类覆盖的方法,否则派生类将不能被实例化。如://抽象方法public abstract class Animal{ public abstract void Sleep(); public abstract void Eat();}//虚方法 public class Animal{ public virtual void Sleep(){} public virtual void Eat(){}}2. 抽象方法只能在抽象类中声明,虚方法不是。其实如果类包含抽象方法,那么该类也是抽象的,也必须声明为抽象的。如:publ 阅读全文
posted @ 2013-08-21 12:18 Ling.zx 阅读(275) 评论(0) 推荐(0)
摘要:1 class SampleCollection 2 { 3 private T[] arr = new T[100]; 4 public T this[int i] 5 { 6 get 7 { 8 return arr[i]; 9 }10 set11 {12 arr[i] = value;13 }14 }15 }16 17 // This class shows how client code uses the in... 阅读全文
posted @ 2013-08-20 16:46 Ling.zx 阅读(188) 评论(0) 推荐(0)
摘要:以下代码,在Lock里面使用递归操作,是否会造成死锁问题??该问题也是很多coder在面试时经常会碰到的问题,在此做下笔记,不懂的coder也可以顺便了解下,确保面试不再因此碰壁。 1 public class A 2 { 3 private object obj = new object(); 4 public void Test(int i) 5 { 6 lock (obj) 7 { 8 if (i > 10) 9 {1... 阅读全文
posted @ 2013-08-03 20:38 Ling.zx 阅读(650) 评论(0) 推荐(0)
摘要:ref 和out 关键字 通过对CLR的学习,我们可以知道,CLR默认所有方法参数都是传值的。对于引用类型的对象,传递的是对象的引用(指向对象的指针),被调用者拥有该对象的引用的拷贝,能够修改对象,改变对象的值;而对于值类型的实例来说,传递给的是实例的一个副本,被调用者对该副本所做的修改不会影响调用者中的实例。 上面使用的是按传值方式来传递参数。接下来,讲按传引用的方式来传递参数。 C# 中提供了 ref 和 out 关键字以便参数按引用(地址)传递,对值类型使用ref和out,为被调用者分配一个托管指针,该指针指向调用者的变量;对于引用类型的话,为被调用者分配一个托管指针,... 阅读全文
posted @ 2013-07-25 01:12 Ling.zx 阅读(497) 评论(0) 推荐(0)
摘要:1、相同点: (1) 都可以被继承 (2) 都不能被实例化 (3) 都可以包含方法声明 (4) 派生类必须实现未实现的方法2、区 别: (1) 抽象基类可以定义字段、属性、方法实现。接口只能定义属性、索引器、事件、和方法声明,不能包含字段。 (2) 抽象类是一个不完整的类,需要进一步细化,而接口是一个行为规范。微软的自定义接口总是后带able字段,证明其是表述一类“我能做。。。” (3) 接口可以被多重实现,抽象类只能被单一继承 (4) 抽象类更多的是定义在一系列紧密相关的类间,而接口大多数是关系疏松但都实现某一功能的类中 (5) 抽象类是从一系列相关对象中抽象出来的概念, 因此反映的是事物的 阅读全文
posted @ 2013-07-20 09:00 Ling.zx 阅读(716) 评论(0) 推荐(0)
摘要:今天碰到了这样一个问题:validateRequest验证引发错误“检测到有潜在危险的 Request.Form 值” 百度下这个问题,很多人也都碰到过这种情况,原因是这样的: ASP.NET请求验证功能提供了应用程序的安全保证,避免站点受到XSS的攻击。但是在一些情况下,我们需要禁用这个功能,比如我们需要使用HtmlEditor来让用户输入一些HTML文本,这时候ASP.NET 2.0允许我们可以通过在web.config设置validateRequest="false"。或者在MVC中,我们可以通过在Controller或者Action上设置[ValidateReque 阅读全文
posted @ 2012-03-05 22:45 Ling.zx 阅读(588) 评论(1) 推荐(0)
摘要:今天就来简单的介绍下接口的基本概念及用法:1、接口的概念及声明接口是一种用来定义程序的协议,它描述可属于任何类或结构的一组相关行为。接口可有方法、属性、事件和索引器或这四种成员的任何组合类型,但不能包含字段。那么接口具有哪些特点呢?·接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有成员(说明:如类A继承接口B,那么A中必须实现B中定义的属性,方法等)。·不能直接实例化接口·接口可以包含事件、索引器、方法和属性·接口不包含方法的实现·类和接口可以从多个接口继承·接口自身可以继承多个接口在声明接口时除了Interface和 阅读全文
posted @ 2012-01-10 22:44 Ling.zx 阅读(241) 评论(0) 推荐(0)
摘要:(转)C# 根据当前时间获取本周、下周、本月、下月、本季度等时间段 DateTime dt = DateTime.Now; //当前时间 DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d"))); //本周周一 DateTime endWeek = startWeek.AddDays(6); //本周周日 DateTime startMonth = dt.AddDays(1 - dt.Day); //本月月初 DateTime endMonth = startMonth. 阅读全文
posted @ 2011-12-30 22:36 Ling.zx 阅读(661) 评论(0) 推荐(1)