- 博客(66)
- 资源 (2)
- 收藏
- 关注
转载 转载:C#中的泛型
泛型(generic)是C#语言2.0和通用语言运行时(CLR)的一个新特性。泛型为.NET框架引入了类型参数(type parameters)的概念。类型参数使得设计类和方法时,不必确定一个或多个具体参数,其的具体参数可延迟到客户代码中声明、实现。这意味着使用泛型的类型参数T,写一个类MyList,客户代码可以这样调用:MyList, MyList或 MyList。这避免了运行时类型转换或装箱操
2015-10-12 17:55:38
394
转载 Maven学习总结(三)
maven作为一个高度自动化构建工具,本身提供了构建项目的功能,下面就来体验一下使用maven构建项目的过程。一、构建Jave项目1.1、创建Jave Project 1、使用mvn archetype:generate命令,如下所示:mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=myapp -
2015-09-16 13:14:50
454
转载 接口和抽象类的区别
一、引言 本文主要是由一些个人观点和网上搜集的资料整理而成。对于各位使用面向对象编程语言的程序员来说,“接口”这个名词一定不陌生,但是不知各位有没有这样的疑惑:接口有什么用途?让它和抽象类有什么区别?能不能用抽象类代替接口呢?而且,作为程序员,一定经常听到“面向接口编程”这个短语,它是什么意思,有什么思想内涵?和面向对象编程是什么关系?本文将一一解答这些疑问。二、面向接口编程
2015-09-16 13:12:33
564
转载 Maven学习总结(二)——Maven项目构建过程练习
一、创建Maven项目1.1、建立Hello项目 1、首先建立Hello项目,同时建立Maven约定的目录结构和pom.xml文件 Hello | --src | -----main | ----------java | ----------resources | -----test | ---
2015-09-16 11:06:57
462
转载 Maven学习总结(一)——Maven入门
一、Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,依赖管理和项目信息管理。1.1、项目构建 项目构建过程包括【清理项目】→【编译项目】→【测试项目】→【生成测试报告】→【打包项目】→【部署项目】这几个步骤,这六个步骤就是一个项目的完整构建过程。 理想的项目构建是高度自动化,跨平台,可重用的组件
2015-09-16 11:05:41
321
转载 EJB到底是
1. 我们不禁要问,什么是"服务集群"?什么是"企业级开发"?既然说了EJB 是为了"服务集群"和"企业级开发",那么,总得说说什么是所谓的"服务集群"和"企业级开发"吧!这个问题其实挺关键的,因为J2EE 中并没有说明白,也没有具体的指标或者事例告诉广大程序员什么时候用EJB 什么时候不用。于是大家都产生一些联想,认为EJB"分布式运算"指得是"负载均衡"提高系统的运行效
2015-09-15 17:24:14
363
转载 Java学习之Iterator(迭代器)的一般用法 (转)
迭代器(Iterator) 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。 Java中的Iterator功能比较简单,并且只能单向移动: (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一
2015-09-02 20:51:56
294
转载 MyEclipse中使用JUnit进行单元测试
1. 下载JUnit的jar文件,下载地址在这里2. 在MyEclipse中新建一个要测试的项目HelloJUnit3. 添加一个要测试的类HelloJUnit,代码如下,注意需要先建packageJava代码 package com.yukaizhao; public class HelloJUnit { public String getM
2015-08-19 17:12:18
793
1
转载 java通过JDBC链接SQLServer2012
首先,在连接数据库之前必须保证SQL Server 2012是采用SQL Server身份验证方式而不是windows身份验证方式。如果在安装时选用了后者,则重新设置如下:http://blog.163.com/jackie_howe/blog/static/19949134720122261121214/ 当你保证SQL Server 2012是采用SQL Server身份验证方式后
2015-08-14 21:40:46
411
转载 JSP JDBC 连接 SqlServer2008
JAVA连接SQL2008与SQL2000有很大的不同!!! 1.首先要去Microsoft官网下载sqljdbc2.0驱动Microsoft SQL Server JDBC Driver 3.0找到sqljdbc4.jar和sqljdbc.jar,这两个都一样,只是针对你的JDK的版本的不同,如果你是JDK6.0直接导入sqljdbc4.jar,以下版本的导入sqljdbc.jar。
2015-08-13 15:17:35
1131
转载 java通过JDBC链接SQLServer2012
首先,在连接数据库之前必须保证SQL Server 2012是采用SQL Server身份验证方式而不是windows身份验证方式。如果在安装时选用了后者,则重新设置如下:http://blog.163.com/jackie_howe/blog/static/19949134720122261121214/当你保证SQL Server 2012是采用SQL Server身份验证方式后,开始如下配置:
2015-08-13 15:16:33
392
转载 IEnumerable和IEnumerator 详解
下面我们先看IEnumerable和IEnumerator两个接口的语法定义。其实IEnumerable接口是非常的简单,只包含一个抽象的方法GetEnumerator(),它返回一个可用于循环访问集合的IEnumerator对象。IEnumerator对象有什么呢?它是一个真正的集合访问器,没有它,就不能使用foreach语句遍历集合或数组,因为只有IEnumerator对象才能访问集合中的项,
2015-04-07 17:52:17
381
转载 C# IEnumerable<T>、IEnumerator<T>、List<T>、ArrayList、[]数组各各的区别
List 是ArrayList的泛型,ArrayList里边的数据类型是object, List 里边的是具体的某种类型, ArrayList类似于向量,可以存储不同的数据类型在一个数组里边(转换为了object)。 一般使用的时候尽量使用List ,因为ArrayList存取都要进行一次转换。 []类型的数组类似于
2015-04-01 17:30:03
1272
转载 C#委托基础9——Invoke与委托
例一[csharp] view plaincopyprint?delegate void AppendStringCallback(string text); private void AppendString(string txt) { this.listView1.Items.Add(txt); }
2015-04-01 15:03:23
1341
转载 C#委托基础8——lambda表达式
[csharp] view plaincopyprint?class Program { double AddInt(int x, int y) { return x + y; } string AddString(string s1,
2015-04-01 15:01:21
309
转载 C#委托基础7——匿名方法
sharp] view plaincopyprint?class Program { double AddInt(int x, int y) { return x + y; } string AddString(string s1, s
2015-04-01 14:58:17
319
转载 C#委托基础6——泛型委托Predicate
此委托返回一个bool值,该委托通常引用一个"判断条件函数"。需要指出的是,判断条件一般为“外部的硬性条件”,比如“大于50”,而不是由数据自身指定,不如“查找数组中最大的元素就不适合”。 例一[csharp] view plaincopyprint?class Program { bool IsGreat
2015-04-01 14:56:59
344
转载 C#委托基础5——泛型委托Action
对于函数返回值为空的情形,可以使用Action泛型委托[csharp] view plaincopyprint?class Program { // 对于函数返回值为空的情形,可以使用Action泛型委托 void Showstring(string s) {
2015-04-01 14:55:21
413
转载 C#委托基础6——泛型委托Predicate
此委托返回一个bool值,该委托通常引用一个"判断条件函数"。需要指出的是,判断条件一般为“外部的硬性条件”,比如“大于50”,而不是由数据自身指定,不如“查找数组中最大的元素就不适合”。 例一[csharp] view plaincopyprint?class Program { bool IsGreat
2015-04-01 14:55:16
316
转载 C#委托基础4——泛型委托Func
预定义泛型委托Func[csharp] view plaincopyprint?class Program { double AddInt(int x, int y) { return x + y; } string A
2015-04-01 14:52:54
486
转载 C#委托基础3——泛型委托
泛型委托[csharp] view plaincopyprint?class Program { // 泛型委托,与普通委托类似,不同之处只在于使用泛型委托要指定泛型参数 public delegate T MyGenericDelegate(T obj1,T obj2);
2015-04-01 14:40:42
361
转载 C#委托基础2——多路委托
多路委托[csharp] view plaincopyprint?class Program { public delegate void SayThingToS(string s); void SayHello(string s) {
2015-04-01 14:38:06
408
转载 C#委托基础一
委托和其委托的方法必须具有相同的签名。签名相同:1.参数类型相同 2.参数数量相同 3.返回值一致 例一[csharp] view plaincopyprint?class Program { public delegate int MathMethod(int x, int y);
2015-04-01 14:34:35
314
转载 C#探秘系列(二)——IsXXX 系列方法
不知道有人做没做过对日外包,如果做过的话,那么对vb.net应该非常熟悉了,当年我刚毕业的时候也做过四个月的外包,那种日子简直不是人过的,就连大楼下面买珠宝的阿姨都说,这些孩子,只看过他们上班,就没见过他们下班,不过有一点好,有个QA的小姑娘天天下午6点教我们倭瓜语,现在还在勾搭中。。。 好了,现在我们看看需求。一: 如何判断“a”是不是数字类型。 ①:在C#中我们
2015-04-01 14:14:02
313
转载 C#探秘系列(一)——ToDictionary,ToLookup
这个系列我们看看C#中有哪些我们知道,但是又不知道怎么用,又或者懒得去了解的东西,比如这篇我们要介绍的toDictionary和ToLookup。 从图中我们看到有四个ToXXX的方法,其中ToArray和ToList,我想大家用的是非常非常多,但是ToDictionary和ToLookup不见得有多少人用了,但不能否认的是这些方法确实很有用。 不多废话了,直接如
2015-04-01 14:13:45
3486
转载 .Net 4.0 之 Dynamic 动态类型
一、.net4.0主要新特性 .Net4.0在.Net3.5基础上新增的主要特性有:可选参数、命名参数和Dynamic。具体请阅生鱼片的这篇博文。这里我们着重讲解C#4.0的Dynamic特性,对于其他特性大家可以在VS2010内尝试一下。总之.Net在不断进步中。 二、ExpandoObject普通应用 Expand
2015-04-01 14:09:28
373
转载 30分钟LINQ教程
一:与LINQ有关的语言特性 1.隐式类型 (1)源起 在隐式类型出现之前, 我们在声明一个变量的时候, 总是要为一个变量指定他的类型 甚至在foreach一个集合的时候, 也要为遍历的集合的元素,指定变量的类型 隐式类型的出现, 程序员就不用再做这
2015-03-31 17:57:25
290
转载 c#开源消息队列中间件EQueue 教程
一、简介EQueue是一个参照RocketMQ实现的开源消息队列中间件,兼容Mono,具体可以参看作者的文章《分享一个c#写的开源分布式消息队列equeue》。项目开源地址:https://github.com/tangxuehua/equeue,项目中包含了队列的全部源代码以及如何使用的示例。二、安装EQueueProducer、Consumer、Broker支持分布式部
2015-03-27 13:38:20
435
转载 C# clr 笔记
1: .net framework 由两个部分组成:CLR 和 FCL。2:在CLR中,所有错误都是通过异常来报告的。3:智能感知功能主要是靠解析元数据实现的。4:允许在不同语言之间方便的切换,并对各种语言进行紧密集成是CLR的出色特性。5:一个方法只有在首次运行时才会由于jit造成一定的性能损失,以后对该方法的调用都以本地代码的形式全速运行。 6:
2015-03-27 11:02:05
442
转载 理解.NET Framework(CLI,CLS,CTS,CLR,FCL,BCL)
既然要学.NET,就要先认识认识她,我不喜欢大段大段文字的东西,自己通过理解,画个图,来看看.NET的沉鱼落雁,闭月羞花之容。 最下层蓝色部分是.NET Framework的基础,也是所有应用软件的基础。.NET Framework不是凭空出来的,实际上API,COM+,和一些相关驱动依然是它的基石。.NET Framework只不过是对这些前辈们进行了系统的封装和扩充
2015-03-27 10:52:58
566
转载 不可小瞧的GetHashCode函数
要实现对象的相等比较,需要实现IEquatable,或单独写一个类实现IEqualityComparer接口。像List的Contains这样的函数,如果我们自己定义的对象不实现IEquatable接口,这个函数会默认调用object的Equels来比较对象,得出非预期的结果。先自定义一个类:public class DaichoKey
2015-03-25 17:55:38
597
转载 深入理解 C# 协变和逆变
msdn 解释如下:“协变”是指能够使用与原始指定的派生类型相比,派生程度更大的类型。“逆变”则是指能够使用派生程度更小的类型。 解释的很正确,大致就是这样,不过不够直白。直白的理解:“协变”->”和谐的变”->”很自然的变化”->string->object :协变。“逆变”->”逆常的变”->”不正常的变化”->object->string 逆变。
2015-03-25 17:26:09
296
转载 设计模式原则总结--读《大话设计模式》有感
读了《大话设计模式》,摘录该书中讲到的设计模式几大原则,供日后使用。一、单一职责原则 就一个类而言,应该仅有一个引起它变化的原因。如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到破坏。软件真正要做的许多内容,就是发现职责并把那些职责相互分离。如果你能够想到多
2015-03-23 16:32:34
361
转载 C#设计模式学习笔记-单例模式
在《Design Patterns:Elements of Resuable Object-Oriented Software》中的定义是:Ensure a class only has one instance,and provide a global point of access to。它的主要特点不是根据客户程序调用生成一个新的实例,而是控制某个类型的实例数量-唯一一个。(《设计模式-基于
2015-03-23 11:08:52
291
转载 ASP.NET中JSON的序列化和反序列化
JSON是专门为浏览器中的网页上运行的JavaScript代码而设计的一种数据格式。在网站应用中使用JSON的场景越来越多,本文介绍ASP.NET中JSON的序列化和反序列化,主要对JSON的简单介绍,ASP.NET如何序列化和反序列化的处理,在序列化和反序列化对日期时间、集合、字典的处理。 一、JSON简介 JSON(JavaScript Object Notati
2015-03-09 15:56:23
464
转载 C#序列化和反序列化
XML序列化需要引用名称空间System.Xml.Serialization,序列化代码如下: public static void Serialize(T o, string filePath) { try { XmlSerializer formatter = new
2015-03-09 14:41:50
336
转载 C#笔记17:事务
C#笔记17:事务本章概要:1:事务概述2:隐式事务3:显示事务 1:事务概述 当您从网上书店购买书籍时,会用钱(以信贷方式)来交换书籍。如果您的信用良好,则一系列相关操作可确保您和书店可以相应地获得书籍和钱。但如果在交换期间该系列操作中的单个操作发生故障,则整个交换就会失败。结果,您就得不到书籍,而书店也得不到钱。负责使该交换取得平
2015-03-03 17:51:50
292
转载 比较和排序(IComparable和IComparer以及它们的泛型实现)
C#笔记25:比较和排序(IComparable和IComparer以及它们的泛型实现)本文摘要:1:比较和排序的概念;2:IComparable和IComparer;3:IComparable和IComparer的泛型实现IComparable和IComparer; 1:比较和排序的概念 比较:两个实体类之间按>,=,
2015-03-03 17:49:08
302
转载 C#工厂模式
最近一直在看设计模式,想把自己的学习笔记与大家分享一下,如果能帮助大家的话,我会非常高兴,同时也欢迎大家指出里面的不足。园子里其实关于此类文章已经很多了,如果dudu感觉放在首页欠妥的话,可以调一下。简单工厂模式(Simple Factory Pattern)介绍:简单工厂模式不能说是一个设计模式,说它是一种编程习惯可能更恰当些。因为它至少不是Gof23种设计模式之一。但它在实际的编程中经
2015-02-28 16:31:15
474
转载 WCF入门教程一[什么是WCF]
一、概述 Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,可以翻译为Windows通讯接口,它是.NET框架的一部分。由 .NET Framework 3.0 开始引入。 WCF的最终目标是通过进程或不同的系统、通过本地网络或是通过Internet收发客户和服务之间的消息。 WCF合并了Web服务
2015-02-28 14:51:45
312
c# 音乐门户程序
2009-04-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人