随笔分类 -  Java语言

摘要:转自:http://www.blogjava.net/persister/archive/2009/05/05/268974.html在JDK1.2以前的版本中,当一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及状态,程序才能使用它。这 就像在日常生活中,从商店购买了某样物品后,如果有用,就一直保留它,否则就把它扔到垃圾箱,由清洁工人收走。一般说来,如果物品已经被扔到垃圾箱,想再 把它捡回来使用就不可能了。 但有时候情况并不这么简单,你可能会遇到类似鸡肋一样的物品,食之无味,弃之可惜。这种物品现在已经无用了,保留它会占空间,但是立刻扔掉它也不划算,因 为也许 阅读全文
posted @ 2012-05-18 11:26 移动应用开发 阅读(178) 评论(0) 推荐(0)
摘要:一、概要 工厂方法(FactoryMethod)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。二、生活中的例子 例如移动电信运营商,不同的话费套餐形式,如动感地带,神州行,全球通等。我们可以把抽象工厂(套餐工厂)做成一个接口,这个接口只有一个方法,就是创建抽象产品(计费类)的工厂方法。然后所有的要生产具体类(动感地带,神州行等)的工厂去实现这个接口,由具体的套餐工厂去创建具体的套餐类。于是我们再增加新的套餐的时候,就不需要更改原有的工厂类,只需要增加此功能的计费类和相应的工厂类就可以了。图示:三、实现思路 工厂方法模式是对简单工厂模式进行了抽象。有一个抽象的Fact 阅读全文
posted @ 2012-05-07 20:00 移动应用开发 阅读(211) 评论(0) 推荐(0)
摘要:大多数人认为,接口的意义在于顶替多重继承。众所周知Java没有c++那样多重继承的机制,但是却能够实作多个接口。其实这样做是很牵强的,接口和继承是完 全不同的东西,接口没有能力代替多重继承,也没有这个义务。接口的作用,一言以蔽之,就是标志类的类别(typeofclass)。把不同类型的类归于不同的接口,可以更好的管理他们。OO的精髓,我以为,是对对象的抽象,最能体现这一点的就是接口。为什么我们讨论设计 模式都只针对具备了抽象能力的语言(比如c++、java、c#等),就是因为设计模式所研究的,实际上就是如何合理的去抽象。(cowboy的名言是 “抽象就是抽去像的部分”,看似调侃,实乃至理)。 阅读全文
posted @ 2012-05-05 15:15 移动应用开发 阅读(285) 评论(0) 推荐(0)
摘要:一. 面向接口编程 在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的对系统设计人员来讲就不 那么重要了;而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交互,在系统设计之初都是要着重考虑的,这也是系统 设计的主要工作内容。面向接口编程我想就是指按照这种思想来编程吧!实际上,在日常工作中,你已经按照接口编程了,只不过如果你没有这方面的意识,那么你 只是在被动的实现这一思想;表现在频繁的抱怨别人改的代码影响了你(接口没有设计到),表现在某个模块的改动引起其他模块的大规模调整(模块接口没有很好 的设 阅读全文
posted @ 2012-05-05 15:00 移动应用开发 阅读(209) 评论(0) 推荐(0)
摘要:[文档最后修正时间: Aug 19, 2006, by Arturya]上一篇谈到 .NET 的 Hashtable 属于比较传统的算法. 并籍此复习了哈希表这种数据结构的经典原理. 下面我们来看看 Java 和 PHP 中又是如何实现 Hashtable 的. 之所以把 Java 和 PHP 的场景结合一起, 是因为他们俩的处理方式非常相似. 论述将以 java.util.HashMap 为主, 该原理同样也适于 PHP. HashMap 是 java.util.Hashtable 的轻量级实现, 且允许 NULL 作为关键字.通过前文, 我们已知由于 .NET Hashtable 哈希函数 阅读全文
posted @ 2012-03-06 16:57 移动应用开发 阅读(190) 评论(0) 推荐(0)
摘要:Hashtable 是现代大多数程序员居家旅行, 不可不备的利器. 如 ASP.NET 程序员天天要打交道的 Application Items, Cache Items 均由 Hashtable 实现. 日常存储配置参数, 数据列, 我们也会用到 Hashtable 或是基于其的结构如 NameValueCollection 等等,.NET 2.0 推出后更增加了一个 System.Collections.Generic.Dictionary, 用法乍一看和 Hashtable 差不多, 甚至还有泛型的优势. 那么是否能说 Dictionary 将会取代 Hashtable? Hashtab 阅读全文
posted @ 2012-03-06 16:56 移动应用开发 阅读(179) 评论(0) 推荐(0)