- 博客(55)
- 收藏
- 关注
转载 可视化对比十多种排序算法(C#版)
可视化对比十多种排序算法(C#版)引言首先,我认为是最重要的是要理解什么是“排序算法”。根据维基百科,排序算法(Sorting algorithm)是一种能将一串数据依照特定排序方式进行排列的一种算法。最常用到的排序方式是数值顺序以及字典顺序。有效的排序算法在一些算法(例如搜索算法与合并算法)中是重要的,如此这些算法才能得到正确解答。排序算法也用在处理文字数据以及产生人类可
2014-07-08 14:03:18
2521
1
转载 代码优化重构(很经典)
1、 清晰地表达意图2、 一个方法只做一件事情3、 同一个方法体内,保持相同的抽象层次4、 不要重复自己(避免手动的复制与粘贴代码)5、 减少“语法噪音”6、 命名时取有意义的名字,避免不规范的缩写 publicDataSetGetDefectDetails(stringsDefGrp) { b
2014-04-21 18:25:13
9460
转载 关于方法的重写(基础篇)
问题一:什么是重写?“重写”父类方法就是修改它的实现方式或者说在子类中对它进行重新编写。问题二:为什么要重写父类的方法 通常,子类继承父类的方法,在调用对象继承方法的时候,调用和执行的是父类的实现。但是,有时候需要 对子类中的继承方法有不同的实现方式。例如,假设动物存在“跑”的方法,从中继承有狗类和马类两个子 问题三:如何重写
2013-11-26 11:48:47
722
转载 父类引用指向子类对象
父类引用指向子类对象从对象的内存角度来理解试试.假设现在有一个父类Father,它里面的变量需要占用1M内存.有一个它的子类Son,它里面的变量需要占用0.5M内存.现在通过代码来看看内存的分配情况:Father f = new Father();//系统将分配1M内存.Son s = new Son();//系统将分配1.5M内存!因为子类中有一个隐藏的引用super会指向父
2013-11-25 17:00:53
658
转载 抽象方法和虚方法的区别
C#抽象方法和虚方法的区别 虚方法和抽象方法都可以供派生类重写,它们之间有什么区别呢? 1. 虚方法必须有实现部分,并为派生类提供了覆盖该方法的选项; 抽象方法没有提供实现部分,抽象方法是一种强制派生类覆盖的方法,否则派生类将不能被实例化。 如: //抽象方法 public abstract class Animal { public
2013-11-25 14:38:20
1321
转载 重写和覆盖的细微差别
重写用关键字 virtual 修饰的方法,叫虚方法。可以在子类中用override 声明同名的方法,这叫“重写”。相应的没有用virtual修饰的方法,我们叫它实方法。重写会改变父类方法的功能。看下面演示代码:#region 重写public class C1{ public virtual string GetName() {
2013-11-25 14:20:06
673
转载 C#关于构造函数初始化器的使用
有时,在一个类中有几个构造函数,以容纳某些可选参数,这些构造函数都包含一些共同的代码。例如,下面的情况: [csharp] view plaincopyclass Car { private string description; private uint nWheels; public Car(string
2013-11-19 11:51:11
8785
转载 关于存储过程与事物
事务事务组合一系列任务为一个执行单元。每个事务以特定的任务开始,以特定的任务结束。当所有的任务成功时事务成功,当任何一个任务失败时,事务失败。所以一个事务只有两个结果:失败或成功。用户能用下列指令组合两个以上的T-SQL语句到一个事务中:Begin Transaction Rollback Transaction Commit Transaction 一组指令中出现任何错误
2013-09-26 15:01:17
1025
转载 sql语句需要注意的问题
1、避免使用不兼容的数据类型。例如,Float和Integer,Char和Varchar,Binary和LongBinary不兼容的。数据类型的不兼容可能使优化器无法执行一些本可以进行的优化操作。例如: selectemp_name form employee where salary> 3000; 在此语句中若salary是Float类型的,则优化
2013-06-17 19:06:30
757
原创 菜鸟日记(2013-5-8)-关于两句SQL语句得到的启示
这个是第一个语句:SELECT * from T_CarInfowhere T_CarInfo.CarID not in ( SELECT T_RepairBill.CarID FROM T_RepairBillRepairType LEFT JOIN T_RepairBill ON T_RepairBillRe
2013-05-08 16:33:51
462
转载 关于with as 作为查询片段的使用和与临时表#Table的比较
http://bbs.youkuaiyun.com/topics/300131856一.WITH AS的含义 WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到。有的时候,是为了让SQL语句的可读性更高些,也有可能是在UNION ALL的不同部分,作为提供数据的部分。特别对于UNION
2013-05-04 15:49:49
8867
转载 关于表中列的聚合的解决
SQL code问题描述: 无论是在sql 2000,还是在 sql 2005 中,都没有提供字符串的聚合函数, 所以,当我们在处理下列要求时,会比较麻烦:有表tb, 如下: id value ----- ------ 1 aa 1 bb 2 aaa 2 bbb 2 ccc 需要得到
2013-05-04 15:33:30
475
原创 菜鸟笔记5月4日(一些函数如:1,OUTER APPLY 用法 2,FOR XML 用法 3,Convert用法)
Cross Apply,Outer Apply Apply运算符是SQL Server 2005及之后版本新加的功能,是T-SQL特有的,不是ANSI标准运算符。Apply:把右表表达式应用于左输入中的每一行。右表达式可以引用左输入中的列,对于左表中的每一行都要计算一次右边输入的表达式。create table customers(customeri
2013-05-04 15:26:55
980
转载 解决聚合函数的问题(一)
无论是在sql 2000,还是在 sql 2005 中,都没有提供字符串的聚合函数, 所以,当我们在处理下列要求时,会比较麻烦:有表tb, 如下: id value ----- ------ 1 aa 1 bb 2 aaa 2 bbb 2 ccc 需要得到结果: id value
2013-05-04 14:39:26
809
转载 一个硬盘的感人爱情故事
我是一个硬盘。 在一个普普通通的台式机里工作。别人总认为我们是高科技白领,工作又干净又体面,似乎风光得很。也许他们是因为看到洁白漂亮的机箱才有这样的错觉吧。其实象我们这样的小台式机,工作环境狭迫,里面的灰尘吓得死人。每天生活死水一潭,工作机械重复。跑跑文字处理看看电影还凑活,真要遇到什么大软件和游戏上上下下就要忙的团团转,最后还常常要死机。 我们这一行技术变化快,差不多每过两三年就要升
2013-04-28 14:09:39
552
原创 今日收获总结(关于存储过程时间查询的一些方法以及字段截取的函数及调用示例)
方法一:关于日期的命名 @DTBegin DATETIME=NULL, @DTEnd DATETIME=NULL,按照时间进行查询AND (@DTBegin IS NULL OR DATEDIFF ( dd ,@DTBegin ,T_CM_SubscribeInfo.ApplyTime) >= 0 ) AND (@DTEnd I
2013-04-26 15:35:54
525
原创 关于Datatable的一些用法
C#动态操作DataTable(新增行、列、查询行、列等) 方法一:动态创建一个DataTable ,并为其添加数据public void CreateTable() { //创建表 DataTable dt = new DataTable(); //1
2013-04-24 20:01:59
1294
转载 ROW_NUMBER() OVER函数的基本用法
ROW_NUMBER() OVER函数的基本用法用法 转自:http://www.cnblogs.com/icebutterfly/archive/2009/08/05/1539657.html语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN)简单的说row_number()从1开始,为每一条分组记录返回一个数字,这里的R
2013-03-18 13:37:53
2758
转载 for循环与foreach性能比较
在很多情况下for和foreach具有同样的功能,选择for还是foreach很多人可能都是看自己的喜好,本测试试图通过来真是测试数据来比较他们的执行效率。希望能给大家对他们的时候带来一些帮助。测试环境: 硬件环境: PIII800 + 1024MB 软件环境: Windows 2000 Advance Server, VisualStudio 2003/C#, Framework 1.1 测
2013-03-07 09:57:12
5640
转载 展望未来,总结过去10年的程序员生涯(转载)
展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告 走过的路,回忆起来是那么曲折,把自己的一些心得体会分享给程序员兄弟姐妹们,虽然时代在变化,但是很可能你也会走我已经做过的10年的路程,有些心得体会你可以借鉴一下,觉得说得有道理的你就接纳,觉得说得没道理的,你就抛弃,以下是我发自内心的,给大家的忠告,特别是针对那些小弟弟妹妹们。01. 自己的户口档案、养老保险
2013-03-06 16:01:38
556
转载 SQL Server高级内容之case语法函数
1.Case函数的用法 (1)使用类似:switch-case与if-else if。 (2)语法: case [字段] when 表达式 then 显示数据 when 表达式 then 显示数据 else 显示数据 end (3)百分制转换素质教育 1)如图:我们
2013-03-06 13:25:32
636
转载 关于接口内容的浅解
接口名传统上以字母I开头,以便知道这是一个接口从接口中派生完全独立于从类中派生在声明接口成员的时候,只要指明接口成员的名称和参数就可以了,接口一旦被继承,子类需要提供方法的所有实现代码。接口声明不包括数据成员,只能包含方法、属性、事件、索引等成员。不允许声明成员上的修饰符,即使是pubilc都不行,因为接口成员总是公有的,也不能声明为虚拟和静态的。如果需要修饰符,最好让实现类来声明。接口和类都可以
2013-03-06 11:34:19
362
转载 net反射详解(反射篇章导读)
概述反射 通过反射可以提供类型信息,从而使得我们开发人员在运行时能够利用这些信息构造和使用对象。 反射机制允许程序在执行过程中动态地添加各种功能。 运行时类型标识 运行时类型标识(RTTI),可以在程序执行期间判定对象类型。例如使用它能够确切地知道基类引用指向了什么类型对象。运行时类型标识,能预先测试某个强制类型转换操作,能否成功,从而避免无效的强制类
2013-03-02 10:58:49
392
转载 SQL 2005 with(nolock)详解
大家在写查询时,为了性能,往往会在表后面加一个nolock,或者是with(nolock),其目的就是查询是不锁定表,从而达到提高查询速度的目的。 什么是并发访问:同一时间有多个用户访问同一资源,并发用户中如果有用户对资源做了修改,此时就会对其它用户产生某些不利的影响,例如: 1:脏读,一个用户对一个资源做了修改,此时另外一个用户正好读取了这条被修改的记录,然后,第一个
2013-03-01 17:07:33
308
转载 管理数据库连接不得不注意的地方
对于Asp.Net应用程序,当面对大量用户的请求,我们的服务器是否有能力从容应对,一方面取决于我们服务器硬件设备的处理能力,更重要的一方面则取决于数据库连接的管理是否合理。(这里代码是否合理,暂不考虑,假定它合理。) 本文主要讨论数据库连接的管理,即连接池的管理需要注意的问题,并通过代码实例进行分析。 注意一:连接池中包含打开的可重用的数据库连接。在同一时刻
2013-03-01 13:38:03
2047
转载 关于反射机制(反射机制的理解一)
在还不太熟悉反射的昨天,以为反射很神秘,在网上到处找答案.今天找了段代码敲了一下,茅塞顿开!其实反射也就那么简单的一回事! 反射是一种机制,通过这种机制我们可以知道一个未知类型的类型信息.比如,有一个对象a,这个对象不是我们定义的,也许是通过网络捕捉到的,也许是使用泛型定义的,但我们想知道这个对象的类型信息,想知道这个对象有哪些方法或者属性什么的.甚至我们想进一步调用这个对象的方法.关键
2013-02-26 17:11:30
956
转载 关于反射机制的理解和Assembly的学习(反射机制二)
程序集;Assembly中包含了可以在 CLR(Common Language Runtime)中执行的代码。所有的.NET应用程序都是由一个或多个assembly组成的,不论你在创建一个Console,WinForms,WebForms应用程序或者一个类 库时,实际上你都是在创建assembly。甚至.NET本身也是通过assembly来实现其功能。一个assembly可以由一个或者多个文件
2013-02-26 17:09:30
542
转载 有关T-SQL的10个好习惯
有关T-SQL的10个好习惯有关T-SQL的10个好习惯 1. 在生产环境中不要出现Select * 这一点我想大家已经是比较熟知了,这样的错误相信会犯的人不会太多。但我这里还是要说一下。 不使用Select *的原因主要不是坊间所流传的将*解析成具体的列需要产生消耗,这点消耗在我看来完全可以忽略不计。更主要的原因来自以下两点:扩展方面的问题造成额外的书签查找
2013-02-18 11:05:26
244
转载 关于删除重复数据的一些sql语句(总结)
--功能概述:删除重复记录 在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢?谢谢! 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by peopleId havi
2013-01-15 14:49:28
575
转载 关于SQL中N,#,@的作用以及关于临时表的一些知识
这是关于sql中N,#,@的作用declare @sql nvarchar(4000)set @sql= N'select @TotalRecords=count(*) from '+ N'('+ @sqlFullPopulate + N') a 'EXEC sp_executesql@sql,N'@TotalRecords int output', @TotalRecords
2013-01-10 16:33:28
4479
转载 asp.net 后台调用jQuery函数
关于asp.net 后台调用jQuery函数.这个应该是个比较简单的功能,但是我却被难住了很长时间。最近终于在一个帖子里面找到了。这边记录一下。这个是前台的js方法:functionaa() { alert("aaaa"); $("#test").slideToggle("100");}后台代码调用:1Clie
2012-12-13 17:00:51
5546
原创 关于今天数据库学习的一些内容和总结
1,SQL Server COUNT() 和SUM()的使用方法 (转)根据BOL中解释COUNT用来返回组中的项数。COUNT(*)返回组中的项数。包括 NULL 值和重复项COUNT(ALL expression):对组中的每一行都计算 expression 并返回非空值的数量。默认值。COUNT(DISTINCT expression):对组中的每一行都计算 expres
2012-12-12 16:54:04
448
原创 11月29日--数据库内容以及代码相关问题
1,关于UNION与UNION ALLUNION表示“并”,当用的时候,系统会自动将重复的元组去掉,如果要保留重复元组则就用UNION ALL。UNION 会合并重复数据,(由于要合并重复,该操所 隐藏着一个 排序的操作。)UNION ALL 简单合并,不会合并重复的。2,关于事件解除和添加绑定的问题。如:解除绑定 sbeCheckEditorSparepartSelect
2012-12-11 10:47:01
320
原创 11月28日-- 关于数据库存储过程的一些学习
1,关于With (NoLock)的学习:所有Select加 With (NoLock)解决阻塞死锁在查询语句中使用 NOLOCK 和 READPAST处理一个数据库死锁的异常时候,其中一个建议就是使用 NOLOCK 或者 READPAST 。有关 NOLOCK 和 READPAST的一些技术知识点:对于非银行等严格要求事务的行业,搜索记录中出现或者不出现某条记录,都是在可容忍范围
2012-11-28 17:00:17
328
原创 菜鸟笔记-9月12日
怎么让网站404跳到自己定义的404页:web.config配置文件中配置 关于asax文件全局配置文件.当一个应用程序启动时,首先就先执行这个类型文件,没有的话那就算,,在这里主要是配置一些http事件啊,或者user等等,,反正是全局的,这个里面的东西一加载,那就会用到所有的页面上而不是象在其他的程序里写的只有一个范
2012-09-13 15:14:41
284
转载 10个助您提高网站访问速度的技巧
- 1、如果可能的话,延迟加载一些内容 可以使用Ajax来按需加载部分内容。比如一个相册,可以在用户浏览页面时先出缩略图,当用户点击了,然后异步请求原图并展示,这样用户如果只需要看几张图片,就不需要等待所有图片都加载下来。这种开发模式叫做延迟加载。 Ajax/Web开发类库如jQuery,Prototype,与及MooTools可以使得延迟加载更容易实现。 2
2012-09-11 11:09:29
499
转载 菜鸟笔记-9月10日(关于jquery的一些应用)
1,Js文件中调用其它Js函数的方法Js文件中调用其它Js函数的方法 在项目开发过程中,也许你会遇这样的情况。在某一Js文件中需要完成某一功能,但这一功能的大部分代码在另外一个Js文件中已经完成了,自己只需要调用这个方法再加上几句代码就可以实现所需的功能。我们知道,在html中,利用引入的两个js是不可以相互调用的。那么该如何解决呢?当然,你可以将代码通通copy过来
2012-09-10 17:51:51
2848
原创 8月27日学习记录
关于序列化问题1、序列化定义:将对象转换为容易传输的格式的过程。例如,可以序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象。反之,反序列化根据流重新构造对象。在此过程中,先将对象的公共字段和私有字段以及类的名称(包括类所在的程序集)转换为字节流,然后再把字节流写入数据流。在随后对对象进行反序列化时,将创建出与原对象完全相同的副本序列化理解:
2012-08-29 14:03:54
309
原创 菜鸟笔记-8月21日
getElementsByName getElementsByName() 方法可返回带有指定名称的对象的集合。 语法 document.getElementsByName(name)该方法与 getElementById() 方法相似,但是它查询元素的 name 属性,而不是 id 属性。 另外,因为一个文档中的 name 属性可能不唯一(如 HTML 表
2012-08-22 18:08:21
249
原创 菜鸟笔记-8月20日
关于Jquery和ajax的学习:首先介绍一下jquery:Jquery是继prototype之后又一个优秀的Javascrīpt框架。它是轻量级的js库(压缩后只有21k) ,它兼容CSS3,还兼容各种浏览器 (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。jQuery使用户能更方便地处理HTML documents、events、实现动画效果,并
2012-08-20 17:59:43
313
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人