JAVA
qiujinyan47
这个作者很懒,什么都没留下…
展开
-
Double-checked locking and the Singleton pattern A comprehensive look at this broken programming idiom
<br />Summary: All programming languages have their share of idioms. Many are useful to know and use, and programmers spend valuable time creating, learning, and implementing them. The problem is that some idioms are later proven not to be all that they w转载 2010-12-25 00:01:00 · 283 阅读 · 0 评论 -
Thread.sleep(long)和object.wait(long)的共同点和不同点
<br />共同点: <br />他们都是在多线程的环境下,都可以在程序的调用处阻塞指定的毫秒数,并返回。 <br /><br />不同点: <br />Thread.sleep(long)可以不在synchronized的块下调用,而且使用Thread.sleep()不会丢失当前线程对任何对象的同步锁(monitor); <br />object.wait(long)必须在synchronized的块下来使用,调用了之后失去对object的monitor, 这样做的好处是它不影响其它的线程对object进转载 2010-12-25 00:04:00 · 295 阅读 · 0 评论 -
面向对象编程
<br /><br />一、对象是对问题领域中事物的抽象,对象具有以下特性:<br />1. 万事皆为对象。问题领域中的实体和概念都可以抽象为对象。例如:在学校领域,对象包括学生、成绩单、教师、课程,教室等。在太阳系领域,对象包括太阳、月亮、地球、火星和木星等。在用java语言创建的图形用户界面中,窗口、滚动面板、按钮、列表、菜单和文本框等也都是对象。<br />2. 每个对象都是唯一的。对象的唯一性来自于真实世界中事物的唯一性。世上不存在两片一模一样的叶子。例如:学校领域的学生小张,学生小王,这些都转载 2010-12-25 00:27:00 · 237 阅读 · 0 评论 -
双重检查锁定及单例模式
<br />简介: 所有的编程语言都有一些共用的习语。了解和使用一些习语很有用,程序员们花费宝贵的时间来创建、学习和实现这些习语。问题是,稍后经过证明,一些习语并不完全如其所声称的那样,或者仅仅是与描述的功能不符。在 Java 编程语言中,双重检查锁定就是这样的一个绝不应该使用的习语。在本文中,Peter Haggar 介绍了双重检查锁定习语的渊源,开发它的原因和它失效的原因。<br /> <br /><br />编辑注:本文在针对 Java 5.0 修订前参考了 Java 内存模型;关于内存排序的描述也许转载 2010-12-25 00:29:00 · 228 阅读 · 0 评论