思维的乐趣

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

06 2010 档案

摘要:1:判断一段线程间lock的代码有没问题,涉及到了 MethodInvoker 跟 IAsyncResult 。2:有一个匿名聊天室,如何进行在线人数统计并实时更新并反映,要求以浏览器为单位。3:WIN FORMS程序中如何实现按住窗口内任意部分来拖动整个窗体的功能。4:有一个很大的WEB项目,几百个页面,但是以前实现时没有进行任何异常对应,经常将错误信息直接显示给用户,现在要进行修补,如何以不挨... 阅读全文

posted @ 2010-06-30 23:42 szh114 阅读(456) 评论(0) 推荐(0)

摘要:1: 请写一个函数实现整型数组的按位向右循环移位,比如: 1,2,3,4,5 要求向右循环移两位, 结果要求是: 4,5,1,2,3 。要求算法复杂度不大于O(n),空间复杂度尽量小。答: 代码1这是我今天现场想到的解法,但面试官一看,说时间复杂度是满足了,但是空间复杂度太大,问我有没什么想法,我想了下,当时头脑比较乱,也没想出好办法来。下来查了一下网上的实现,如这个所讲,最后这种解法应该比较高效... 阅读全文

posted @ 2010-06-25 02:12 szh114 阅读(876) 评论(0) 推荐(0)

摘要:在System.Object类中有三个被设计用来进行对象比较的方法:第一个是virtual 的,后两个是 static 的。ReferenceEquals() 实现了类型的引用比较,对该函数来讲,只有应用在引用类型上时才会有意义,比较两个值类型的引用将永远返回 false ,无论它们的值是否相等。甚至下面的代码: int i = 0; Console.WriteLine(object.Refere... 阅读全文

posted @ 2010-06-24 01:33 szh114 阅读(1246) 评论(0) 推荐(1)

摘要:这两天在学习微软官方的一个DEMO项目,PetShop4.0。本来是不太能看得懂的,但有诸前辈老师们做出了讲解,那就容易了,学到了很多东西。主要是:张逸 写的 PetShop4.0 详解系列。写得真好。。。另外还有:PetShop 4.0 官方详解PetShop 数据库解读Microsoft .NET Pet Shop 4 架构与技术分析.Net PetShop 4.0的配置文件属性管理浅析Mic... 阅读全文

posted @ 2010-06-23 21:52 szh114 阅读(395) 评论(0) 推荐(0)

摘要:Encoding 是System.Text 命名空间下面的一个类,顾名思义,它是字符编码相关的一个类。因为在.NET平台上我们最多用的字符串,以及字符型都是UNICODE编码方式的,因此处理对象也多以UNICODE字符串为主。这个类有大概40个方法,具体可查MSDN,其中有5 个是静态方法可以由 Encoding 类来直接调用,但其实这5个是最不常用的方法:平常更容易看见的却是:byte[]byt... 阅读全文

posted @ 2010-06-22 15:35 szh114 阅读(20655) 评论(0) 推荐(1)

摘要:答案是:即使在拥有GC的托管堆上,也有可能发生内存泄漏!根据普遍意义上的内存泄漏定义,大多数的.NET内存对象在不再被使用后都会有短暂的一段时间的内存泄漏,因为要等待下一个GC时才有可能会被释放。但这种情况并不会对系统造成大的危害。真正影响系统的严重内存泄漏情况如:1:大对象的分配。根据CLR的设计,.NET中的大对象将分配在托管堆内的一个特殊的区域,在回收大对象的时候,并不会像变通区域回收完成时... 阅读全文

posted @ 2010-06-22 02:05 szh114 阅读(765) 评论(0) 推荐(0)

摘要:(收藏)《博客园精华集》WEB分册 (收藏)《博客园精华集》Sharepoint分册(收藏)《博客园精华集》JavaScript(共213篇)(收藏)《博客园精华集》网站维护性能安全(共16篇) (收藏)《博客园精华集》HTML/CSS部分筛选结果(共90篇)(收藏)《博客园精华集》WEB标准部分筛选结果(共55篇) (收藏)《博客园精华集》ASP.NET分册 (收藏)《博客园精华集》MOSS分类... 阅读全文

posted @ 2010-06-22 01:34 szh114 阅读(259) 评论(0) 推荐(0)

摘要:这个问题的答案太普遍了,随便抄了一份在下面,感谢这位博主。小村农家 javascript setTimeout 和 setInterval 区别唯一需要特别注意的就是JS是大小写敏感的,千万不要把函数名写错了。[setTimeout]setTimeout(表达式,延时时间)在执行时,是在载入后延迟指定时间后,去执行一次表达式,记住,次数是一次用setTimeout实现的自动变化显示随机数的效果:&... 阅读全文

posted @ 2010-06-21 12:07 szh114 阅读(700) 评论(0) 推荐(0)

摘要:当复制一个单纯的值类型源的时候,问题就比较简单,直接复制源内容,在栈上重新生成一份拷贝即可。无所谓浅复制,深复制。  但是当复制源是一个引用类型的对象,比如 string 对象,那么就有两种复制法了,一种是直接生成另一个引用,然后指向同一块堆内存。另一种是开辟一块新的堆内存,拷贝源的内容,然后将生成的目标引用指向新的堆内存。前者往往称为浅复制,后者称为深复制。  当一个类中,既包含值类型变量,又包... 阅读全文

posted @ 2010-06-21 02:24 szh114 阅读(1502) 评论(0) 推荐(0)

摘要:C#中String 和 string 有什么区别?答,没有任何区别,string 只是 String 的别名,但是有一个重要的前提就是该文件中引入了System命名空间,否则,String是个非法字符,但是 string 就不是,因为它就相当于 System.String ,不管你引没引入 using System;。事实上,准确的说法是:String 是 System.String 的一个引入了... 阅读全文

posted @ 2010-06-20 23:54 szh114 阅读(1619) 评论(1) 推荐(0)

摘要:碰到一个问 SQL HAVING语句的用法的题目。结果没答上来。把用法摘抄在这儿,以为记录。出处:http://www.w3school.com.cn/sql/sql_having.aspHAVING 子句在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。SQL HAVING 语法SQL HAVING 实例我们拥有下面这个 "Orders" 表:O_Id Or... 阅读全文

posted @ 2010-06-14 22:08 szh114 阅读(9364) 评论(3) 推荐(1)

摘要:1:一个10个元素的排好序的线性表,使用2分法进行查找,最坏情况下需要比较多少次?  答:4次,就10个元素,自己数一下就出来啦。2:说说IDisposable接口的大概功用。3:接口可以有哪些类型的成员,不可以有哪些类型的成员。  答:CLR允许接口可以包含事件、属性、索引器、静态方法、静态字段、静态构造函数以及常数。但是注意:C#中不能包含任何静态成员。4:一个用户自定义的Exception类... 阅读全文

posted @ 2010-06-11 15:41 szh114 阅读(865) 评论(2) 推荐(0)

摘要:在ASP.NET中,状态的保持方法大致有:ApplicationState,SessionState,Cookie,配置文件,缓存。  ApplicationState 的典型应用如存储全局数据。  SessionState 的典型应用如购物车项目保存。  Cookie 的典型应用如网站的个性化设置。  配置文件 的典型应用如保存客户账户信息。  缓存 的典型应用如保存从数据库获取的数据。  相对... 阅读全文

posted @ 2010-06-11 02:03 szh114 阅读(9267) 评论(1) 推荐(1)

摘要:今天在写一个自动属性的时候,发现编译错误,Error 1 'MyUser.UserName.get' must declare a body because it is not marked abstract or extern 我百思不得其解,语法完全正确的呀。。。。。仔细一想,昨天为实验ASP.NET AJAX,把.NET版本默认临时设置成了3.0,是不是因为这个影响?然后我去把.NET版本调... 阅读全文

posted @ 2010-06-10 11:48 szh114 阅读(576) 评论(0) 推荐(0)

摘要:第一:private void Button1_Click(object sender, System.EventArgs e){   Response.Redirect(Request.Url.ToString()); }第二:private void Button2_Click(object sender, System.EventArgs e){ Response.Write(<scr... 阅读全文

posted @ 2010-06-10 00:44 szh114 阅读(387) 评论(0) 推荐(0)

摘要:1:What are the network protocols and port number that a .NET Remoting object uses?2:When you access a file ,and get a "Access Denied Error",the reason maybe what ? and how to resolve it?3:What is the ... 阅读全文

posted @ 2010-06-10 00:41 szh114 阅读(809) 评论(0) 推荐(0)

摘要:今天偶然在一个鸡毛网站上看到一篇文章,没找到原始作者所以没法标了,我就存个档,空了好好看看,虽然06年的文章了,比较老,不过应该没啥大碍。  ADO.NET作为微软最新的数据访问技术,已经在企业开发中得到了广泛的应用。对于一线的开发人员来说,掌握基本的概念和技术之后,提高应用水平和解决实际问题的最有效手段,莫过于相互交流彼此的最佳时间经验经验。在这篇文章中,两位ADO.NET专家向读者毫无保留地、... 阅读全文

posted @ 2010-06-10 00:11 szh114 阅读(360) 评论(0) 推荐(0)

摘要:在VS2008中,一个ASP.NET应用程序的存在形式有两种,WebSite 跟 WebProject ;首先必须明确的是,这两种不同的形式,在最终部署到服务器和编译后具有相同的结果,仅在设计时它们的组织结构有所不同。  从创建方式上来说:区别在于:一种是FILE->NEW->PROJECT->ASP.NET WEB APPLICATION ;另一种是:FILE->NEW-... 阅读全文

posted @ 2010-06-09 19:20 szh114 阅读(1130) 评论(2) 推荐(1)

摘要:如题,今天补充一个基础事实点,就是ASP.NET AJAX 是ASP.NET3.5才引入的,同时引入的还有LINQ,而ASP.NET 3.5是随.NET Framwork 3.5引入的,但是要注意一个事实,就是.NET Framework有3.0,但是ASP.NET没有3.0 ,它直接从2.0 跳到了 3.5。当时.NET3.0时,CLR,跟 ASP.NET都没有变化,保持2.0,但是新增加了WP... 阅读全文

posted @ 2010-06-09 15:07 szh114 阅读(282) 评论(0) 推荐(0)

摘要:今天看 《深入解析C#》 第2章,提到事件,我觉得这个角度跟讲法很好。以前经常看到,事件就是一种特殊类型的委托。其实这样讲并不太妥当。根据今天的学习,应该这么理解才比较合适:  类似于属性(property)是对某些成员变量的操作进行了封装简化,事件(event)也是对一类成员变量的操作进行了封装简化。特殊性在于,属性可以作用于各种类型的成员变量上,甚至是委托类型的成员变量上。但是一般不这么做,因... 阅读全文

posted @ 2010-06-09 12:13 szh114 阅读(620) 评论(0) 推荐(0)

摘要:所谓的对对象集合进行查询的方法,就是指,如何从一个集合中找出符合条件的某些项来。这一次我没有用 自定义对象集合,而是直接使用对象集合,是因为普通的对象集合,如int[], List<int>,这样的东西,也没有统一固定的查询方法,因为对于一个查询来讲,它的条件是多种多样的,所以是无法提供统一固定查询方法的。比如有时候想找出所有大于10的int,有时候又想找所有小于10的int。。。。。... 阅读全文

posted @ 2010-06-08 20:20 szh114 阅读(5775) 评论(0) 推荐(3)

摘要:一个集合可否排序,要看系统知不知道排序的规则,像内建的系统类型,int ,string,short,decimal这些,系统知道怎么排序,而如果一个集合里面放置的是自定义类型,比如自己定义了一个Car类型,要把它排序,系统是不知道怎么办的。那么,如何告知系统排序的规则呢?有以下几种方法:1:对类实现IComparable接口,示例如下:代码1其中最主要的是这句:  class Product :I... 阅读全文

posted @ 2010-06-08 15:35 szh114 阅读(6300) 评论(3) 推荐(1)

摘要:关于反射,我先看了书,然后在园子里面一搜,就又发现打仗贴啦,哈哈白话讲反射技术 --- 适合初学者入门引导关于反射技术谈吉日嘎拉的《白话反射技术》及其他(技术篇)谈吉日嘎拉的《白话反射技术》及其他(吵架篇)恩,都看完大概也了解了。 前几天就把内容简单列出来,然后大致瞅了两眼,发现挺复杂的,也听说做为一个低手反射用得不是很经常,因此就摞下没看,果然,过几天就忘得没影儿了。然后我就杯具了--前几天笔试一题目就是:“简述反射与序列化” 。。。。。 我就郁闷了半天,只对序列化写了几句,反射白在那儿了。(人永远也无法选择自己被测试的方式) 回来后就马上补这一块知识,但是反射这个不在具体应用场景中,还是. 阅读全文

posted @ 2010-06-07 14:50 szh114 阅读(1403) 评论(0) 推荐(0)

摘要:在.NET 中,新引入了一个程序集的概念,就是指经由编译器编译得到的,供CLR进一步编译执行的那个中间产物,在WINDOWS系统中,它一般表现为.dll,或者是.exe的格式,但是要注意,它们跟普通意义上的WIN32可执行程序是完全不同的东西,程序集必须依靠CLR才能顺利执行。之所以要编译为程序集然后由.NET FRAMEWORK解析执行,就是为了实现跨平台的功能。并且由CLR解析执行可以针对不同... 阅读全文

posted @ 2010-06-06 22:03 szh114 阅读(7957) 评论(0) 推荐(1)

摘要:LINQ是.NET3.0中引入的一块新内容,它是什么东西呢。好像是因为现在系统中数据格式越来越多,针对每一种数据进行不同方式的操作很麻烦,终于让某些人看不惯了,我们要解决这个问题。当然仍然是老方法,用一层壳把下层的差异覆盖起来,然后在上面提供统一的处理方式。思路是很简单,但要真正实现,应该是非常复杂的,光应用来讲,为了顺利使用LINQ,我们借助了 隐式类型变量,匿名类型,扩展方法,对象初始化器,集... 阅读全文

posted @ 2010-06-05 16:34 szh114 阅读(1494) 评论(0) 推荐(0)

摘要:有时候,我们需要封装一组数据,只有数据,没有方法,并且只用于当前程序,不需要在项目间重用,这时候,如果是传统的使用类来封装的话,大概会是下面这种样子:internal class SomeData{  //定义一系列私有成员变量  //创建属性来封装每一个数据成员  //重写方法的ToString()来输出每一个数据成员  //重写GetHashCode() 及Equals()来实现基于值的相等性... 阅读全文

posted @ 2010-06-04 00:59 szh114 阅读(8149) 评论(1) 推荐(4)

摘要:var i = 10; // implicitly typedint i = 10; // explicitly typed如上所示,var关键字可以用来定义一种变量,这种变量的类型可以被编译器在编译时自动根据其初始化值来识别,这个可以用 somevar.GetType().Name 值来进行验证。除了可以对常见的类型如 int , bool , string 变量应用隐式类型以外,其它的数组,... 阅读全文

posted @ 2010-06-04 00:02 szh114 阅读(1638) 评论(0) 推荐(1)

摘要:我们为什么需要索引器(indexer)这种玩意儿?  当我们要定义一个自定义的集合类型时,比如EmployeeCollection , ManagerCollection .因为功能的需要,我们在这样的类中,我们使用了泛型的集合类做存储,还需要在类中封装一些其它的必要的相关方法,比如计算工资的方法呀,查看员工有多少个WORKING DAYS的方法呀,之类的。这样子,我们的泛型存储集合类的索引器功能... 阅读全文

posted @ 2010-06-03 17:41 szh114 阅读(1409) 评论(0) 推荐(0)

摘要:用C的时候,语言只有一个数组类型,好像没有动态数组,要用的话需要自己构造。用C++的话,可以用STL中的vector;用C#的时候,因为数组已经是一种引用类型,每次都需要在堆上new它,所以创建运行时动态大小的数组已经成为了可能,如下: int n = Int32.Parse(Console.ReadLine()); int[] ia_test = new int[n]; Console.Writ... 阅读全文

posted @ 2010-06-02 17:40 szh114 阅读(1266) 评论(0) 推荐(0)

摘要:有时候,在编程时需要创建一个数据结构,这个数据结构中有数据成员有方法(或者只有数据,只有方法都可能),但这些都是比较通用的东西,不需要运行时交互或者变化,并且内容具有相关性,我希望它们是一个比较整体的块,于是,它就自然得是结构或者类,但我又不希望这个块被实例化出对象来,更不希望它被继承什么的。此时需要一种方法,就是将构造函数声明为 private 的。这样一来,不管是一个结构,还是类,都无法实例化... 阅读全文

posted @ 2010-06-02 02:03 szh114 阅读(1293) 评论(0) 推荐(1)