Java
yfzzky
灯书红豆最相思,墨轩键盘伴吾生!
展开
-
keySet 与entrySet 遍历HashMap性能差别
[size=large]一.问题发现[/size]今天,在写完代码后用Find Bugs扫锚了一下,发现类中一处代码中有提示如下内容: [code="java"]Map map = ContextHolder.getContext().getEventChains(); for (Iterator iter = map.keySet().iterator()...原创 2010-08-12 21:34:57 · 235 阅读 · 0 评论 -
Java回调与模板方法模式
一.Java回调与模板方法模式 模板方法模式很常用,其目的是在一个方法中定义一个算法骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法的某些步骤。在标准的模板方法模式实现中,主要是使用继承的方式,来让父类在运行期间可以调用到子类的方法。 其实在Java开发中,还有另外一个方法可以实现同样的功能,那就是Java回调技术,通过回调在接口中定义的方法,...2012-09-01 12:36:15 · 213 阅读 · 0 评论 -
Runtime.addShutdownHook用法
一.Runtime.addShutdownHook理解 在看别人的代码时,发现其中有这个方法,便顺便梳理一下。void java.lang.Runtime.addShutdownHook(Thread hook)该方法用来在jvm中增加一个关闭的钩子。当程序正常退出,系统调用 System.exit方法或虚拟机被关闭时才会执行添加的shutdownHook线程。其中shutdownHo...2012-08-25 12:49:36 · 293 阅读 · 0 评论 -
LinkedHashMap的扩展应用
一. 概述: LinkedHashMap是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。LinkedHashMap实现与HashMap的不同之处在于,LinkedHashMap维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,该迭代顺序可以是插入顺序(insert-order)或者是访问顺序,其中默认的迭代访问顺序就是插入顺序,即可以...原创 2012-08-08 19:04:01 · 91 阅读 · 0 评论 -
ScheduledExecutorService执行周期任务
项目中用到了cheduledExecutorService中的一个方法,就顺便把其中几个关重要的方法学习下:1.schedule schedule(Runnable command, long delay, TimeUnit unit),schedule方法被用来延迟指定时间后执行某个指定任务。a.代码如下:public class Job implements Ru...2012-08-04 09:30:22 · 229 阅读 · 0 评论 -
Spring中的ThreadPoolTaskExecutor
在观察线上系统的运行情况下,发现在错误日志中有这类错误信息,org.springframework.core.task.TaskRejectedException,于是便对ThreadPoolTaskExecutor类做下梳理.[b][size=large]1.ThreadPoolExecutor[/size][/b] Spring中的ThreadPoolTaskExecutor是借助...2011-12-14 12:09:32 · 374 阅读 · 0 评论 -
JAXP在Spring中应用
在阅读spring源码的过程中,想看下spring对xml的解析,发现是用的jaxp相关API实现的.于是想写个小demo,以加深对代码的理解.[size=large][b]1.用JAXP解析XML文档[/b][/size]Java有多种方法可以分析XML文档,你可以选择现在已经成熟的标准技术,比如DOM和SAX,或者你可以选择专用于处理XML的Java API (Ja...2011-12-12 17:21:50 · 98 阅读 · 0 评论 -
Java中新建对象的初始化顺序
Java中新建对象的初始化顺序自以为很清楚了,但做了几个小题后,发现自己错了,索性自己也梳理下.一.对于没有静态变量或静态代码段的类 1.其初始化顺序 (1)先初始化父类的实例变量,再调用父类的构造函数。 (2)再初始化子类的实例变量,再调用子类的构造函数完成初始化。 (3)子类成员变量初始化是在父类构造函数调用完后,在此之前,成员变量的值均是默认值,这里...2011-02-26 17:15:14 · 81 阅读 · 0 评论 -
Java的事件监听器
在java的swing编程中,Java中的事件机制非常常用,网上也有很多这样的文章,自己也顺便梳理一下.一. 事件监听器的参与者:1.事件对象: 一般继承自java.util.EventObject对象,由开发者自行定义.2.事件源: 就是触发事件的源头,不同的事件源会触发不同的事件类型.3.事件监听器: 事件监听器负责监听事件源发出...2011-02-18 20:37:36 · 108 阅读 · 0 评论 -
编写可读代码的艺术-从命名和注释开始
什么样的代码才是真正好的、整洁的代码?iteye.com上的文章很多: Grady Booch,《面向对象分析与设计》作者: 引用 • 整洁的代码是简单、直接的; • 整洁的代码,读起来像是一篇写得很好的散文; • 整洁的代码永远不会掩盖设计者的意图,而是具有少量的抽象和清晰的控制行。 Dave Thomas,OTI公司创始人,Eclipse战略教父:...原创 2012-12-27 00:09:35 · 156 阅读 · 0 评论