面向对象特性 理论(感觉java设计,是为了达到这些目的才把代码写成那样的~) 1)万物皆为对象 2)程序时对象的集合,他们通过发送消息来告知彼此所要做的 3)每个对象都有自己的由其他对象所构成的存储 4)每个对象都拥有其类型 5)某一特定类型的对象都可以接收同样的信息。OOP 面向对象特点 类与对 ...
分类:
编程语言 时间:
2018-08-30 02:00:46
阅读次数:
234
参考 1. 三种工厂模式的分析以及C++实现|博客园 2. 设计模式之三:抽象工厂模式 | CSDN 3. 浅谈Java设计模式——单实例、简单工厂、抽象工厂、观察者 | CSDN 抽象工厂 为创建一组相关或者相互依赖的对象提供一个接口,而无需指定他们具体的类。 通俗讲,就是创建工厂的工厂,每个工厂 ...
分类:
其他好文 时间:
2018-08-29 01:10:21
阅读次数:
173
原型模式:通过原型实例创建新的对象,就不再需要关心这个实例本身的类型,只要实现了克隆自身的方法,就可以通过这个方法来获取新的对象,而无须再去通过new来创建。 原型模式有以下几种方式:简单形式(new一个对象),浅克隆,深克隆 前面两种方式比较简单,我直接用深克隆来实现,深克隆是通过流的方式来实现兑 ...
分类:
编程语言 时间:
2018-08-28 23:44:00
阅读次数:
217
设计模式简介 设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。 设计模式是一套被反复使用的、多数人知晓的、经 ...
分类:
编程语言 时间:
2018-08-27 11:26:08
阅读次数:
154
定义 确保一个类只有一个实例,并提供一个全局访问点。 通俗点讲单例模式就是保证只new 了一个对象每次获取都是这一个对象的模式。 最简单的单例实现 public class Singleton { //使用一个私有的类成员保存唯一的实例对象。 private static Singleton uni ...
分类:
编程语言 时间:
2018-08-26 16:38:31
阅读次数:
147
前言 这次要介绍的是迭代器模式,也是一种行为模式。我现在觉得写博客有点应付了,前阵子一天一篇,感觉这样其实有点没理解透彻就写下来了,而且写完后自己也没有多看几遍,上次在面试的时候被问到java中的I/O的各种实现用到了什么设计模式,我愣是想半天没想出来了,人家还给提示了我也没想出来,最后还是面试官给 ...
分类:
编程语言 时间:
2018-08-26 00:04:18
阅读次数:
216
解法一:只适合单线程环境(不好) 注解:Singleton的静态属性instance中,只有instance为null的时候才创建一个实例,构造函数私有,确保每次都只创建一个,避免重复创建。缺点:只在单线程的情况下正常运行,在多线程的情况下,就会出问题。例如:当两个线程同时运行到判断instance ...
分类:
编程语言 时间:
2018-08-23 13:06:13
阅读次数:
173
装饰者模式出现的原因 要对类的功能进行增强,可以新建一个类继承这个类,这种方法可以解决问题,但如果增加的功能越来越多,那继承的层次就越来越深,造成继承冗余的问题 装饰者模式可以不用继承类而增强类的功能,原理是使用对象之间的关联关系取代类之间的继承关系 当然还可以使用代理模式来增强类的功能 装饰者模式 ...
分类:
编程语言 时间:
2018-08-22 16:45:28
阅读次数:
180
一直不是很了解设计模式,也不知道如何使用。现在慢慢一点一点了解。 创建型模式:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式 结构型模式:适配器模式、装饰者模式、代理模式、外观模式、桥接模式、组合模式、享元模式 行为型模式:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令 ...
分类:
编程语言 时间:
2018-08-22 14:02:29
阅读次数:
161
Spring 为解耦而生,其中AOP(面向切面编程)是很浓重的一笔。 本文来探讨一下AOP实现的原理。 一. 概述 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在 ...
分类:
其他好文 时间:
2018-08-21 10:54:23
阅读次数:
155