顾名思义,装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例,关系图如下:Source类是被装饰类,Decorator类是一个装饰类,可以为Source类动态的添加一些功能,代码如下:[java]view plaincopypu...
分类:
编程语言 时间:
2015-03-02 18:10:34
阅读次数:
197
1、导入已经开发好的工程 从菜单的File-->Import打开 选中General-->Existing Projects into Workspace点Next按钮选择工程目录即可 2、plugin工程生成jar包 从菜单的File-->Export打开 选中Plug-in Development--...
分类:
编程语言 时间:
2015-03-02 17:04:45
阅读次数:
217
一.zookeeper简介 ? ??一款管理分布式应用程序的协调服务系统 二.zookeeper应用场景 ???? ????网上也有很多介绍,可以参见 ? ?http://blog.csdn.net/xinguan1267/article/details/38422149 本文主要...
分类:
编程语言 时间:
2015-03-02 17:04:45
阅读次数:
197
canvas的drawImage方法有个缺点,就是当图片还未加载完成时调用它将无效。
当然,在高速运转的游戏主循环中,可以直接忽略这个问题,或者用 img.complete == true来做下判断。
在游戏循环之外的地方,可以用 img.onload = function (){};这样的回调解决。
但是,如果需要实现预先大量图片的加载,并且将加载进度告知用户,这时就需要一个图片加载器。
...
分类:
编程语言 时间:
2015-03-02 17:00:02
阅读次数:
177
1.1 Exception类
java异常结构中定义有throwable类,Exception和Error是其派生的两个子类。其中Exception表示由于非法情况导致的异常,Error表示java运行时候环境出现的错误。
异常处理的目的就是当异常发生时候妥善的终止程序,避免灾难性后果的发生,具体的操作通常包括:
l 通知:向用户通知异常对的发生
l 恢复:保存重要的数据,关闭文件,回...
分类:
编程语言 时间:
2015-03-02 17:01:02
阅读次数:
185
SimpleDateFormat 的非线程安全问题...
分类:
编程语言 时间:
2015-03-02 16:59:31
阅读次数:
218
题目描述:
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。
输入:
输入可能包含多个测试样例,对于每个测试案例,
输入的第一行为一个整数n(1
输入的第二行包括n个整数,其中每个整数a的范围是(1
输出:
对应每个测试案例...
分类:
编程语言 时间:
2015-03-02 16:58:08
阅读次数:
208
在Python中有很多很好的工具来生成字符串文档(docstring),比如说: epydoc、doxygen、sphinx,但始终觉得pydoc还是不错的工具,用法非常简单,功能也算不错,本文主要介绍pydoc.
pydoc是Python自带的模块,主要用于从python模块中自动生成文档,这些文档可以基于文本呈现的、也可以生成WEB 页面的,还可以在服务器上以浏览器的方式呈现!...
分类:
编程语言 时间:
2015-03-02 16:54:43
阅读次数:
212
解释器是Java虚拟机非常重要的一部分,它的工作就是把字节码转化为机器码并运行。Hotspot中实现了两种具体的解释器,分别是模板解释器而C++解释器。同时在Hotspot的源码树中还保留着一种“字节码解释器”的古老解释器。这种解释器没有编译优化,效率比较低,本质上就是一个比较长的switch语句,针对不同的字节码执行不同的操作。这些操作直接以C/C++语言的形式表现出来,随着项目的编译一起形成了...
分类:
编程语言 时间:
2015-03-02 16:55:36
阅读次数:
205
话说小镇上开了一家宠物食品店,小动物们可以去买零食吃,大家都非常高兴,猫咪啊,狗狗啊,猪猪啊……都约好了一起去!
/*
* 这是一只Dog类,由于门口没有写规范,它们不知道自己要说什么
* */
public class DogPet {
}
/*
* 这是一只Cat类,由于门口没有写规范,它们也不知道自己要说什么
* */
public class Ca...
分类:
编程语言 时间:
2015-03-02 16:54:14
阅读次数:
188
通过以上的学习,对spring容器和DI的概念应该比较清晰了,DI(依赖注入)作为spring的核心,spring当然提供了一套完善的机制来进行依赖注入。前篇文章从概念上介绍了依赖注入,本篇着重学习spring依赖注入的方法,这里主要采用xml的方式。
基本注入
构造器注入和设值注入是依赖注入的两种主要方式,spring对此有很完善的实现,下面首先以代码的形式进行简要的说明。
构造器注入
...
分类:
编程语言 时间:
2015-03-02 16:52:16
阅读次数:
133
在本次面试中我遇到的这个问题,思路是有的,但是没有完成好。毕竟写在纸上的在很大程度上来说只能是思路。不过貌似总体很成功,才面试一家公司就被录用,不过貌似工资要低了点。再接再厉吧。...
分类:
编程语言 时间:
2015-03-02 16:50:53
阅读次数:
152
工厂类模式提供的是创建单个类的模式,而建造者模式则是将各种产品集中起来进行管理,用来创建复合对象,所谓复合对象就是指某个类具有不同的属性,其实建造者模式就是前面抽象工厂模式和最后的Test结合起来得到的。我们看一下代码:还和前面一样,一个Sender接口,两个实现类MailSender和SmsSen...
分类:
编程语言 时间:
2015-03-02 16:48:24
阅读次数:
155
1.用qplot(x,data=data,geom.=”bar”,weight=y)+scale_y_continuous("y")画出y关于x的条形。图中提示binwidth这里是指矩形的宽度,指定之后如下qplot(x,data=data,geom="bar",weight=y,binwidth...
分类:
编程语言 时间:
2015-03-02 16:47:38
阅读次数:
1895
寻找第二小的元素:如果用堆排序的方法,我们建立一个堆后只需要,比较根节点的左儿子和右儿子的大小就可以得到第二小的节点了。而且BuildHeap的代价只有O(n)。 1 #include 2 3 using namespace std; 4 5 #define Left(i) i*2+1 6...
分类:
编程语言 时间:
2015-03-02 16:46:13
阅读次数:
132
原型模式虽然是创建型的模式,但是与工程模式没有关系,从名字即可看出,该模式的思想就是将一个对象作为原型,对其进行复制、克隆,产生一个和原对象类似的新对象。本小结会通过对象的复制,进行讲解。在Java中,复制对象是通过clone()实现的,先创建一个原型类:[java]view plaincopypu...
分类:
编程语言 时间:
2015-03-02 16:47:42
阅读次数:
161