摘要:
Synchronized Synchronized涉及很多知识面,我们先从一些相关知识讲起。 CAS CAS 全称 Compare And Swap (又称Compare And Exchange) / 自旋 / 自旋锁 / 无锁 因为经常配合循环操作,直到修改完成为止,所以泛指一类操作 执行原理 阅读全文
摘要:
装饰模式 Decorator 本篇文章转载自http://c.biancheng.net/view/1366.html 装饰模式比较简单,我就不单独写实现例子了。参考设计图去实现不是什么问题。建议可以写一写找找感觉。 在现实生活中,常常需要对现有产品增加新的功能或美化其外观,如房子装修、相片加相框等 阅读全文
摘要:
多线程与高并发 写下本系列文章,用以记录学习多线程与高并发的过程。 一些比较基础的知识会直接带过,不做详细说明。 线程 下面会从介绍线程到实现java多线程来讲。 线程的概念 线程的概念在我之前写的《Java开发者需要了解的硬件知识 (二)、操作系统篇》中已经讲述过了。搬过来用一用。 进程是OS分配 阅读全文
摘要:
观察者模式 本篇文章大部分摘录自 http://c.biancheng.net/view/1390.html 在现实世界中,许多对象并不是独立存在的,其中一个对象的行为发生改变可能会导致一个或者多个其他对象的行为也发生改变。例如,某种商品的物价上涨时会导致部分商家高兴,而消费者伤心;还有,当我们开车 阅读全文
摘要:
中介者模式(调停模式) Mediator 模式的定义与特点 中介者(Mediator)模式的定义:定义一个中介对象来封装一系列对象之间的交互,使原有对象之间的耦合松散,且可以独立地改变它们之间的交互。中介者模式又叫调停模式,它是迪米特法则的典型应用。 中介者模式是一种对象行为型模式,其主要优点如下。 阅读全文
摘要:
外观模式 Facade 外观模式内容相对简单,就不写新的例子了。本篇文章摘录自 http://c.biancheng.net/view/1369.html 外观模式的定义与特点 外观(Facade)模式的定义:是一种通过为多个复杂的子系统提供一个一致的接口,而使这些子系统更加容易被访问的模式。该模式 阅读全文
摘要:
工厂模式 Factory 介绍 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 前言 工厂模式 阅读全文
摘要:
何为软件设计模式 软件设计模式的概念与意义 有关软件设计模式的定义很多,有些从模式的特点来说明,有些从模式的作用来说明。本教程给出的定义是大多数学者公认的,从以下两个方面来说明。 1. 软件设计模式的概念 软件设计模式(Software Design Pattern),又称设计模式,是一套被反复使用 阅读全文
摘要:
策略模式 Strategy 介绍 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法 阅读全文
摘要:
前言 本系列,记录了我深刻学习设计模式的过程。也算是JAVA进阶学习的一个重要知识点吧。 与设计相关的代码会贴出,但是基础功能的代码会快速带过。有任何错误的地方,都欢迎读者评论指正,感谢。冲冲冲! 单例模式 Singleton 应用场景 只需要一个实例存在的场景 比如各种Manager 类 比如各种 阅读全文