07 2012 档案
摘要: 多例模式实际上就是单例模式的推广,多例模式又划分为有上限多例模式和无上限多例模式两种,有上限多例模式中的多例类的实例是有上限的,
当这个多例类中的上限数值上等于 1 时,此时,多例类退化回到了单例类;而对于无上限多例模式中的多例类,它的上限是没有限制的,也就是说它的上限数值是不确定的,
这个多例类并不一定能够退化成单例类
posted @ fancydeepin 阅读(4011) |
摘要:
posted @ fancydeepin 阅读(20425) |
摘要: 工厂方法模式又称为多态性工厂模式或虚拟构造子模式;与简单工厂模式不同,在工厂方法模式中,核心的工厂类不再负责所有具体产品实例的创建,
而仅仅是需要负责给出具体工厂子类必须实现的接口,让工厂子类去负责具体产品实例的创建。
posted @ fancydeepin 阅读(1897) |
摘要: 简单工厂模式又称为静态工厂方法模式,是工厂模式中的一种形态之一,是一个很根本的设计模式;
简单工厂模式一般涉及三个角色:工厂角色、具体产品角色、抽象产品角色,模式的核心是工厂类,这个类含有必要的逻辑判断,
它根据传进的不同参数来判断应当创建哪一个具体产品类的实例,而客户端则可以免去直接创建具体产品实例,而仅仅负责"消费"产品,这种做法很好的实现了责任的分割。
posted @ fancydeepin 阅读(1555) |
摘要: 不扯太多概念性的东西,简单点来说,插入排序 将数组所有元素划分为有序区和无序区,假设当前数组有 n 个元素,
开始默认第一个元素(下标为0)所处的位置是有序区,假设让 i 指向无序区,第二个元素(i=1)至数组最后一个元素(i=n-1)属于无序区;
假设数组元素是按从左至右存放的,则每趟排序是将下标 i 所指向的有效值插入有序区的适当位置,使得每趟排序完成之后,有序区的所有元素总是保持有序状态。
按这样来回 n -1 趟插入之后,则 n 个元素已成有序状态。
posted @ fancydeepin 阅读(2639) |
摘要: 与单向冒泡相似的,双向冒泡排序就是在一趟排序完成之后,同时向两端有序的将元素冒出,使得两端总是保持有序状态,中间无序。
假设有 n 个待排序元素,则最多只需要 n /2 趟排序,就能使得所有元素变成有序的了。由于最近在搞排序算法,当然,在写这篇随笔
之前也有在网上搜索过与双向冒泡排序相关的资料,我找到的都是通过嵌套了 while 循环语句来实现双向冒泡排序的,而我接下来的,
并没有这样做,而是直接在单向冒泡排序算法中直接来修改,这样很容易的也能实现双向冒泡排序;
posted @ fancydeepin 阅读(1037) |
摘要: n 个元素数据需要进行 n - 1 趟排序,第 i 趟排序,需要对元素数据做两两比较 n - i 次,每趟排序完成之后,剩余较大的元素(升序)或较小的元素(降序)将冒到
数组最末端,此后,该项元素就此排定,不需要再移动。
posted @ fancydeepin 阅读(673) |
摘要: maven3 入门;
如何创建一个 maven 项目;
eclipse maven3 helloworld;
posted @ fancydeepin 阅读(16938) |
摘要: 前言:
逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下。
lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码。特别是相对于 pojo,光说不做不是我的风格,先来看看吧。
posted @ fancydeepin 阅读(154582) |
摘要: 前言:这属于 java 的基础知识,你可以不了解,也可以不拿它当一回事,代码也一样能敲的顺畅;这是很久之前,我从 c 转 java 刚入门那会的看法,那会我坚持自己的理念:
重实践,讲运用,轻理论。当然,对同一样事物,在不同阶段也会有不一样的看法,这理念在某个时段已经不适合我,早就被抛弃了。不扯淡了,直接进入主题。
posted @ fancydeepin 阅读(12261) |
摘要: 前言:
十指落在键盘,不知从何写起。这会才来谈 java 中的 string,总感觉写着有点别扭,当真是啃老菜了这回。
但这也是自己在翻完优化编程和突破程序员基本功之后自己的感受、理解和体会,算是进阶的成长记录吧,呵呵~~
posted @ fancydeepin 阅读(2767) |
摘要: 前言:
java 中的异常处理机制你真的理解了吗?掌握了吗?
catch 体里遇到 return 是怎么处理? finally 体遇到 return 怎么办?finally 体里有 system.exit() 方法怎么处理?当 catch 和 finally 体里同时遇上 return 怎么办?
相信你在处理异常的时候不是每次都把它 throws 掉就完事了,很多时候异常是需要我们自己来 catch 并针对所抛出的 exception 做一些后续的处理工作。
posted @ fancydeepin 阅读(69932) |
摘要: 前言:
java 5.0 开始对基本数据类型提供了 自动装箱 (autoboxing) 和 自动拆箱 (autounboxing) 的功能,
使得基本数据类型与其对象之间的转换变得极其方便。
即便你不知道 什么是 自动装箱与拆箱,但相信你平常时候一直都在接触,只是在你还没有触及这样一个概念之前,一直没有发觉而已。
但是你需要知道在 java 中什么是自动装箱与拆箱,还需要知道 int 和 short 的装箱,因为这两个的装箱规则与 float 或 double 以及
其他的基本数据类型不完全一样。
posted @ fancydeepin 阅读(1744) |