J2SE1.5便于开发的新语言特性: Joshua Bloch的访谈录(2) (转)
J2SE1.5便于开发的新语言特性: Joshua Bloch的访谈录(2) (转)[@more@]XML:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />Office:office" />ASPectratio="t" v:ext="edit">2003-5-121515020.bmp" align=baseline border=0>您能把这六个方面的改进概括一下吗? 那好,我做一个简述: 泛型Generic – 提供了collection操作的编译期类型安全,并且避免了类型转换的苦差事。 For循环增强Enhanced for loop – 避免使用容易引起错误的迭代器. 自动置入/自动取出Autoboxing/unboxing – 避免了
J2SE1.5便于开发的新语言特性:Joshua Bloch的访谈录(3) (转)
J2SE1.5便于开发的新语言特性:Joshua Bloch的访谈录(3) (转)[@more@]XML:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />Office:office" />ASPectratio="t">2003-5-121521100.bmp" align=baseline border=0>您能把泛型和"for增强"结合在一起吗? 当然没问题。你看,我们把泛型技术融入到上面的代码中: void cancelAll(Collection<TimerTask> c) { for (TimerTask task : c) task.cancel(); } 我觉得这是更优雅的代码。现在代码可以准确地表明他要做什
Struts快速入门(三) (转)
Struts快速入门(三) (转)[@more@]利用ActionMapping的命令模式XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> struts提供一个公开的基于XML语句的方法来说明请求URI中servlet路径与适当的请求处理器之间的映射。这个实现与命令模式[Gof]很相似。以下片断摘自struts-config.xml文件,下列声明用于建立ActionMapping配置对象,它是<action>元素的运行时表现。 <action-mappings> <action path="/editCustomerProfile" type="packageName.EditCustomerProfileAction" name="c
Struts快速入门(二) (转)
Struts快速入门(二) (转)[@more@]struts Mvc 语义 XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 我们从关键的Struts抽象概念开始,这是它MVC架构的核心。Struts使用Service to Worker模式实现了MVC模式。[Core] 控制器对象 控制器被Actionservlet类所实现。它提供一个中心位置来处理全部的终端请求。这就为处理视图和导航管理的控制层提供了更为清晰的划分,把模型访问和操作留给专门的请求处理器。全部提交的请求被映射到中心处理器,其配置说明如下: <servlet> <servlet-name>
在C++中实现“属性 (Property)” (转)
在C++中实现“属性 (Property)” (转)[@more@]在C++中实现“属性 (Property)”XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 摘要: 本文介绍了在C++中实现“属性 (Property)”的方法,“属性”是我们在C#(或其它一些语言)中常常能用到的一种特性。这里介绍的实现方法使用的是标准的C++,没有用任何其它的语言扩展。而大部分的库或是编译器为了实现“属性”,往往对C++作一些扩展,就像我们在托管的C++或是C++ Builder中看到的那样,也有的是使用普通的set和get方法,这些都不能算是真正的“属性
CUJ:高效使用标准库:STL中的unary predicate (转)
CUJ:高效使用标准库:STL中的unary predicate (转)[@more@]Effective Standard C++ Library: Unary Predicates in the STLXML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> Klaus Kreft and Angelika Langer http://www.cuj.com/experts/1904/toc.htm?topic=experts 标准运行库中的几个泛型算法在运行时使用了一元判定式(unary predicate)。例子是带if的算法,比如count_if()、find_if()、remove_if()、和replace_if(),但也有partition()这样[不带if]的算法。在本次专栏中,我们
流式媒体 (转)
流式媒体 (转)[@more@]流式媒体 随着Inte.NET的发展,流式媒体(Streaming Media)越来越普及,流式媒体是通过网络传输的音频、视频或多媒体文件,流式媒体在播放前并不下载整个文件,流式媒体的数据流随时传送随时播放,只是在开始时有一些延迟。当流式媒体文件传输到您的计算机时,在播放之前该文件的部分内容已存入内存。 目前比较流行的流式媒体技术是美国RealNetwork公司的RealPlay产品,许多Internet 的音乐台、视频点播站点采用该产品。微软公司近年来推出的windows Media技术异军突起,以其方便性、先进性、集成性、低费用等特
VC6.0和BCB6.0中STL的性能比较(2) (转)
VC6.0和BCB6.0中STL的性能比较(2) (转)[@more@]内存操作的测试 测试内容:测试了new,delete,malloc和free。其中:news,deletes,mallocs,frees都是做了10000次循环的结果。其他的都是单次操作的结果。 VC6.0的测试结果:title news deletes new delete new[] delete[]ticks 5050000 3800144 484 272 512 280ms 2.7734e+000 2.0870e+000 2.6625e-004 1.4938e-004 2.8132e-004 1.5417e-004title mallocs frees malloc freeticks&nb
安装Debian Linux 3.0r1系统 (转)
安装Debian Linux 3.0r1系统 (转)[@more@]1、为安装Debian Linux准备计算机 这个就不用说了吧。 2、安装系统 Debian在安装过程中要引导两次,这是和其他的Linux发行版本不同的地方,这也为在一个系统上安装和其他的Linux发行版本带来困难,还好只是困难。首先,从CD-ROM或者引导盘引导,然后使用它来安装和配置一个内核和系统的其他元素。然后进行第二次引导(这次使用安装在硬盘上的那个内核),然后配置或安装其他应用软件。 2.1第一次引导 启动后,出现boot:时候可以使用F1键察看帮助选项。根据自己的情况选择引导加载内核。第
Delphi面向对象编程的20条规则(By Marco Cantu)(rule 16-20) (转)
Delphi面向对象编程的20条规则(By Marco Cantu)(rule 16-20) (转)[@more@]规则16:可视化窗体继承(Visual FoRM Inheritance) 如果应用得当,这将是一个强大的工具。根据我的经验,你所开发的项目越大,越能体现它的价值。在一个复杂的程序中,你可以使用窗体的不同等级关系来处理一组相关窗体的多态性(polymorphism)。 可视化窗体继承允许你共享多个窗体的一些公共的动作:你可以使用共享的方法,公用的属性,甚至是事件处理程序,组件,组件属性,组件事件处理方法等等。 规则17:限制保护域数据的使用(Limit Protecte
使用Game API函数制作二维动作游戏(二) (转)
使用Game API函数制作二维动作游戏(二) (转)[@more@]本文所举示例的代码包括一个使用了这个canvas的MIDlet。你可以尝试着运行SimpleGameMIDlet这个小程序,看看它是怎样工作的。你将会看到一个像正在做健身操的海星的东西(或许它正在寻找自己失掉的腿)。 XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> ASPectratio="t" v:ext="edit"> 游戏场景就像是洋葱(有层次) 典型的二维动作游戏常包含一个背景和若干动画人物。尽管你可以自己来描绘出这种场景,不过Game api函数
类和对象 (转)
类和对象 (转)[@more@]Delphi在很大程度上采用了面向对象的开发思路,所以,在采用delphi作为开发工具时,class和对象就显得 尤为重要! 对class的明确定义是:对具有相同特征的一类事物所做的归纳。作为一个非常抽象的概念,我们可以对类 这个字举例来理解:在校的学生,虽然每个人都会有不同的情况,还有小学生、中学生、大学生之分,男、 女生之分,但是他们有一个共同点,都处于求学阶段。我们就可以把他们归纳为“学生类”,而每一个学生 就是学生类的对象(有一点需要说明,在很多书中,有实体或者实例这种说法,这里实体或者实例也
深入C++ Builder之编写自己的元件-深入分析VCL继承、消息机制(3) (转)
深入C++ Builder之编写自己的元件-深入分析VCL继承、消息机制(3) (转)[@more@]这篇文章提及内容可能大家已经在很多地方看到过了,作者也是如此,只不过还看了很多VCL源代码,加上自己实际编写元件的经验,拼凑了这么一篇文章。所以所有言论都是个人观点、经验的描述,仅供参考。XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 你可转载,拷贝,但必须加入作者署名Aweay,如果用于商业目的,必须经过作者同意。 题外话 很多朋友看了我的前两篇文章后,纷纷来信说能不能介绍一些元件入门的基础知识,因
在JAXP中透明的缓存XSL转换器 (转)
在JAXP中透明的缓存XSL转换器 (转)[@more@]在JAXP中透明的缓存xsl转换器 XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 使用内置在Transformer Factory中的缓存功能在保持易用性的同时提高性能 摘要 当在具有众多并发进程重复使用XSLT(Extensible Stylesheet Language Transformations)的web环境中时,实现一个样式表缓存可以从根本上提高Web应用程序的性能。可是对于纯粹的JAXP用户来说,在大多数JAxp (Java api for XML Parsing) 程序中使用样式表缓存通常并不方便。本文章将介绍
James Gosling谈Java的发展 (转)
James Gosling谈Java的发展 (转)[@more@]James Gosling谈Java的发展XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 如今,Java已经成为了分布式企业级应用的事实标准。用James Gosling的话来说,Java的发展历程就像一部科幻小说。最近,James Gosling接受了VARBusiness的采访,对Java、Sun和微软.NET的发展发表了自己的见解。 从这篇访谈可以看出,James Gosling引以为傲的仍然是自己计算机科学家的身份,以及在Java上取得的科学性成就。当然,作为Sun的元老和技术骨干,他不得不去关注更多技术之外的
Delphi 完全时尚手册之 Visual Style 篇---使非标准 Win32 控件或自画控件也具有 Windows XP 的界面风格 (转)
Delphi 完全时尚手册之 Visual Style 篇---使非标准 Win32 控件或自画控件也具有 Windows XP 的界面风格 (转)[@more@]Delphi 完全时尚手册之 Visual Style 篇---使非标准 win32 控件或自画控件也具有 windows XP 的界面风格 这里先说说两个概念:Theme(主题)和 Visual Style 。Theme 最早出现在 microsoft Plus! for Windows 95 中,是 Windows 中 Wallpaper、Cursors、Fonts、Sounds 、Icons 等的设置值集合。Visual Style 在 Windows xp 中才被引入,Visual Style 规定了 Contorls 的外观,另外还包括使用这些外观的一套 api 。
函数指针浅谈 (转)
函数指针浅谈 (转)[@more@]/* 看到 ilov.NET大作“有没有试过将函数作为参数(parameter)来传递?” (ASP?Id=18162">http://www.csdn.net/develop/Read_Article.asp?Id=18162). 颇有感触,下面是我关于“函数指针”和作为参数传递的实践内容, 不多言,大家亲自体会一下即知。 本人水平有限,欢迎指正(绝不是谦虚^_^)。 如有错误,Mailto:leepyzh@21cn.com">mailto:leepyzh@21cn.com*/ //程序如下//Test on windows 2000 + vc 6.0////====================================// #include "stdaf
J2SE1.5的新特点(之一) (转)
J2SE1.5的新特点(之一) (转)[@more@]j2se1.5的新特点XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> ASPectratio="t" v:ext="edit">2003-5-10021190.gif" o:href="http://Java.sun.com/features/2002/10/images/face_q.gif"> J2SE 的下一个版本名字叫“Tiger”在让程序员的代码更清楚、更短、更安全,更加容易开发的情况下不损失其兼容性。 请你简单谈谈J2SE 1.5 的优点。 新的java语言特点都基于一个目的:尽量使它们都使用一些相同的语法习惯并提供语义支持。也就是说:以前程
小写转大写金额在C++中的实现 (转)
小写转大写金额在C++中的实现 (转)[@more@]在小写转大写金额时我们应该注意的是人类在读数的过程进行分析,比如要读“12345.67”,大写读法是:“壹万贰仟叁佰肆拾伍元陆角柒分”,在实际的读数过程中,人必须知道1后面有4位,即是万,2后面有3位,即是仟,依次类推,当然由于人已经习惯了万的下一位是仟,所以不再去数2的后面有几位。 根据上面的识别过程,我们应该采取反相识别实现遇到的数字,即在读取整数部份时,应是“伍肆拾叁佰贰仟壹万”。 另外置零的方式与段的设置, 1. 零主要存在于两个数之间有0的情况,但“
Running Multiple Versions of the Framework Side-by-Side (转)
Running Multiple Versions of the Framework Side-by-Side (转)[@more@]Early: Side-By-Side (a.k.a SBS, or SxS) is the phrase used to refer to the installation of two different versions of the microsoft windows .NET framework on a single client or server machine. While the 1.0 version of the Framework has been patched twice, these service packs merely replace existing files in the 1.0 Framework with new ones. The v1.1 Framework is a completely separate runtime that installs on a machine