`
文章列表
简单地说,观察者模式定义了一个一对多的依赖关系,让一个或多个观察者对象监察一个主题对象。这样一个主题对象在状态上的变化能够通知所有的依赖于此对象的那些观察者对象,使这些观察者对象能够自动更新。 设计原则: 1.找出程序中会变化的方面,然后将其和固定不变的方面相分离。 在观察者模式中,会改变的是主题的状态,以及观察者的数目和类型。用这个模式,你可以改变依赖于主题状态的对象,却不必改变主题。这就叫提前规划! 2.针对接口编程,不针对实现编程。 主题与观察者都使用接口:观察者利用主题的接口向主题注册,而主题利用观察者接口通知观察者。这样可以让两者之间运作正常,又同时具有松耦合的优点。 3.多用组合, ...
设计原则: 继承会使所有子类都具有所父类一样的特性,如果使用覆盖,那么子类繁多的时候每个类都要使用覆盖。。 接口会使所有子类都实现其方法,如果子类繁多且实现的方法基本一样,那么怎么办?还使用接口吗?如果以后维护,需要更改这一特性,那么所有子类都需要修改,麻烦。 设计原则一:封装变化即找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。 设计原则二:针对接口编程,而不是针对实现编程 设计原则三:多用组合,少用继承
大致浏览这本书,会发现上面有好多的图片,好多好玩的对话,很多人会感觉这是一本轻松愉快的书。但是请记住:这本书不是花两天时间,一边看片,一边上网能读完的书,读这本书需要完全的集中精力,需要深入的思考,甚至做笔记。记得当年我看完Design Pattern Explained,总共只用了两天时间,感觉对它掌握得也相当不错。但是读完这本书我整整花了七天时间,而且读完一些章节后会感觉头脑有点爆炸。 这本书最大的优点是它的述事方式,实例、问答、图片、drama、采访、相互对话,各种各样刺激脑神经的方式都用上了,它让读者在读这本书的过程不停地进行互动、思考,难怪会这么累。不过只有这样的阅读才能带来最大的 ...
Oracle客户端挺招人烦的,部署连接它的应用通常需要先安装它的客户端,安装程序要求在目标机器上写注册表,假设你没有洁癖的话,你仍可能被下面的事情绊住:当你的机器上的其他程序依赖于x64的Oracle的程序,并且它们很有 ...
线程与IO总结
http://bitnami.com/download/files/stacks/redmine/2.3.1-1/bitnami-redmine-2.3.1-1-windows-installer.exe?with_popup_skip_signin=1 http://wmcxy.iteye.com/blog/1450209
String s = "16"; String _hex = Integer.toHexString(Integer.parseInt(s));//转16进制 System.out.println("转16进制为:" + _hex); ? String s1 = "6A"; int _oct = Integer.parseInt(s1, 16);//转十进制 System.out.println("转10进制为:" + String.valueOf(_oct));

我的下载

jdk1.6 http://download.oracle.com/otn/java/jdk/6u43-b01/jdk-6u43-windows-i586.exe
1.网址:http://code.google.com/p/memcache-top/ 下载程序,放到linux下 2.如果执行perl memcache-top-v0.6 --instances=127.0.0.1:11212,127.0.0.1:11211 出现如下错误: Can't locate Time/HiRes.pm in @INC Can't locate ExtUtils/MakeMaker.pm in @INC (解决办法:http://hi.baidu.com/liu731/item/a5ac223e9538e9d06d15e9b5) OK Can't locate CPAN ...
1.脚本路径 /etc/init.d/tomcat 首先执行: vi /etc/init.d/tomcat 按 a 编辑,将下面内容根据你自己的情况(主要是修改 /usr/local/tomcat6/bin/ ) 修改后copy到编辑框中, esc 退出编辑,:wq 保存退出 # !/bin/bash # Description: start or stop the tomcat # Usage: tomcat [start|stop|reload|restart] # export PATH=$PAT ...
1.mysql快速插入百万级测试数据 insert into test select * from test;
1. 找到memcached的pid   方法1:ps -ef   方法2:vi home/cws/local/memcached/bin/memcached.pid    2. kill 第1步的pid 3.去到memcached安装路径,home/cws/local/memcached/bin 4.启动memcached     # /usr/local/bin/memcached -d -m 2048  -u root -l 192.168.1.20 -p 12111 -c 1024 -P /tmp/memcached.pid     参数说明:     -d 启动为守护进程     ...
这个问题谁能解决啊 解决: cmd跳到sdk tools文件路径下 adb kill-server 然后再adb start-server
  <Host name="a.com"  appBase="webapps" > <Alias>a.com</Alias> <Context path="" docBase="/a" reloadable="true" crossContext="true"> </Context>              </Host>   <Host name="b.com"  appB ...
http://blog.haohtml.com/archives/13282 http://redmine.ossxp.com/redmine/documents/3
Global site tag (gtag.js) - Google Analytics