摘要: 桥接模式 Bridge模式基于类的最小设计原则,通过使用封装,聚合以及继承等行为来让不同的类承担不同的责任。它的主要特点是把抽象(abstraction)与行为实现(implementation)分离开来,从而可以保持各部分的独立性以及应对它们的功能扩展。 像我们常用的JDBC桥DriverManager一样,JDBC进行连接数据库的时候,在各个数据库之间进行切换,基本不需要动太多的代码,甚至丝毫不用动,原因就是JDBC提供统一接口,每个数据库提供各自的实现,用一个叫做数据库驱动的程序来桥接就行了。下面还是以票务系统为例:票务系统接口定义1publicinterfaceTicketsSyst. 阅读全文
posted @ 2014-03-13 11:51 keyiei 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 代理模式为其他对象提供一种代理以控制对这个对象的访问。举个例子,大家买火车票的时候,可以去火车站买,我们都知道,火车站的人很多,买票需要排队。如果不想排队,可以去代理点儿那儿买。代理就是这个意思,代我们去买火车票哈!代理分为静态代理和动态代理,下面分别举例说明。静态代理:票务系统接口:1publicinterfaceTiketsSystem{2voidbuyTicket();3}火车站实现了这个票务系统的接口,可以买票:1publicclassTrainStationimplementsTiketsSystem{2publicvoidbuyTicket(){3System.out.print. 阅读全文
posted @ 2014-03-12 22:25 keyiei 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。在大规模的系统开发过程中,我们常常碰到诸如以下这些情况:我们需要实现某些功能,这些功能已有还不太成熟的一个或多个外部组件,如果我们自己重新开发这些功能会花费大量时间;所以很多情况下会选择先暂时使用外部组件,以后再考虑随时替换。但这样一来,会带来一个问题,随着对外部组件库的替换,可能需要对引用该外部组件的源代码进行大面积的修改,因此也极可能引入新的问题等等。如何最大限度的降低修改面呢?Adapter模式就是针对这种类似需求而提出来的。Adapter模式通过定义一个新的接口(对要. 阅读全文
posted @ 2014-03-11 23:05 keyiei 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 单例模式(Singleton)是一种常用的设计模式。在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在。例1:最常用的单例模式1publicclassSingleDemo{23//在类加载的同时已经创建好一个静态对象,调用时反应速度快4//资源利用率不高5privatestaticSingleDemoobj=newSingleDemo();67//私有构造函数8privateSingleDemo(){9}1011publicstaticSingleDemogetInstance(){12returnobj;13}14}例2:资源利用率高的单例1publicclassSin. 阅读全文
posted @ 2014-03-11 15:22 keyiei 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 1.工厂模式工厂模式适合:凡是出现了大量的产品需要创建,并且具有共同的接口时,可以通过工厂方法模式进行创建。例子:每个程序员都有自己擅长的语言,假如一个项目的开发语言是Java,这时项目经理就会到人力资源部门申请擅长Java的程序员。程序员接口定义1publicinterfaceProgrammer{2publicvoidsayHello();3}JAVA程序员实现类1publicclassJavaProgrammerimplementsProgrammer{2@Override3publicvoidsayHello(){4System.out.println("I'maJa 阅读全文
posted @ 2014-03-11 00:19 keyiei 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 下面的几段话来自国学大师叶嘉莹先生关于怎样热爱诗词、怎样学习诗词的一段访谈,听了之后受益良多,特整理了一下,与大家共勉。怎么能热爱上古诗词你爱一个人你愿意跟她每天见面嘛你要跟她每天聊天嘛你要跟她甜言蜜语地说一说情话嘛那你总不理他就没有办法了你要天天读啊,熟能生巧自然有一天会恍然大悟高楼不是一天盖成的千里之行要始于足下的砖瓦从哪里得来从你读诵背诗从古人的语汇里面找到你的语汇你要掌握他们的表达的能力和技巧你除了多读之外没有别的方法而且不只是读读 他不跟你结合在一起人有左半脑 右半脑一个是知性的 一个是感性的诗歌它不只是知识诗歌是有生命的你不能只用知识去读它你要结合你的生命去读它在急行当中匆匆忙忙. 阅读全文
posted @ 2014-03-10 11:16 keyiei 阅读(149) 评论(0) 推荐(0) 编辑
摘要: java操作Excel最常用的开源组件有poi与jxl。jxl是韩国人开发的,发行较早,但是更新的很慢,目前似乎还不支持excel2007。poi是apache下的一个子项目,poi应该是处理ms的office系列文档最好的组件了。poi的jar包下载地址:http://www.apache.org/dyn/closer.cgi/poi/release/bin/poi-bin-3.10-FINAL-20140208.zip1/**2*@excel3*/4publicstaticvoidexcelDemo(){5//创建一个工作薄,返回这个工作薄的引用6HSSFWorkbookworkboo.. 阅读全文
posted @ 2014-03-10 00:01 keyiei 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 常用的IO流•根据处理数据类型的不同分为:字节流和字符流•根据数据流向不同分为:输入流和输出流字节流:字节流以字节(8bit)为单位,能处理所有类型的数据(如图片、avi等)。字节输入流:InputStream 是所有的输入字节流的父类,它是一个抽象类。常用的字节输入流:ByteArrayInputStream、StringBufferInputStream、FileInputStream、PipedInputStream,它们分别从Byte 数组、StringBuffer、本地文件中、和从与其它线程共用的管道中读取数据。ObjectInputStream 和所有FilterInputStr. 阅读全文
posted @ 2014-03-08 23:36 keyiei 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序,选择排序,快速排序 阅读全文
posted @ 2014-03-07 15:10 keyiei 阅读(397) 评论(0) 推荐(0) 编辑
摘要: 位移运算 阅读全文
posted @ 2014-03-06 11:16 keyiei 阅读(465) 评论(0) 推荐(0) 编辑