概述 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于己于他人于系统都是多赢的:设计模式使代码编制真正工程化:设计模式是软件工程的基石脉络,如同大厦的结构一样. 设计模式分为三种类型,共23种.创建型模式:单例模式.抽象工厂模式.建造者模式.工厂模式.原型模式.结构型模式:适配器模式.桥接模式.装饰模式.组合模式.外观模式.享元模式.代理模式.…
3.委派设计模式 设计思想:就是多个类去完成一项的工作,其中一个类去分发任务,其他类做具体的任务,而具体表现是这个委派类的工作,具体过程是被委派类来操作的 [ITask.java]定义工作的统一标准 package com.itcloud.pattern.delegate; //意见任务需要多人进行完成 public interface ITask { //不同的人更具任务标准完成不同的工作 void work(); } [WorkerOne.java]被委托类 package com.itcl…
一.基础概念 (1).单例设计模式:保证一个类在内存中的对象唯一性. (2).应用场景:数据都存储在配置文件的对象中,多个程序对同一个配置文件的对象进行操作.一个程序要基于另一个程序操作后的结果进行操作. (3)步骤: 1.构造函数私有化 2.自己new创建一个本类对象. 3.对外提供一个方法,让其他程序可以获取到这个对象. (4)饿汉式:代码以上来就创建一个本类对象.   懒汉式:有数据传入时,才会创建一个本类对象. 二.饿汉式(非延迟加载形式) (1).示例代码 class Single {…
单例设计模式:构造方法私有化,在类的内部定义static属性和方法,利用static方法来取得本类的实例化对象:无论外部产生多少个实例化对象,本质上只有一个实例化对象 饿汉式单例设计 class Singleton{ private static final Singleton INSTANCE = new Singleton();//产生一个实例化对象 private Singleton(){}//封装构造方法 public static Singleton getInstance(){ re…
package singleton; /**单例设计模式 饿汉式 * * @author gx *这种方式基于classloder机制避免了多线程的同步问题,不过,instance在类装载时就实例化, *虽然导致类装载的原因有很多种,在单例模式中大多数都是调用getInstance方法, * 但是也不能确定有其他的方式(或者其他的静态方法)导致类装载, * 这时候初始化instance显然没有达到lazy loading的效果. */ public class Ehan { private st…
单例设计模式 保证一个类在使用过程中,只有一个实例.优势就是他的作用,这个类永远只有一个实例. 优势:这个类永远只有一个实例,占用内存少,有利于Java垃圾回收. 单例设计模式关键点 私有的构造方法. 提供一个外界能够访问的方法. 单例模式代码演示 懒汉模式(延迟加载) package test; //懒汉模式 public class Teacher { private static Teacher tea=null; private Teacher(){}//提供私有的构造方法 //提供外界…
思想: 为了避免其他程序过多建立该类对象,先禁止其他程序建立该类对象 为了让其他程序可以访问到该类对象,只好在本类中自定义一个对象 为了方便其他程序对自定义对象的访问,可以对外提供一些访问方式 代码体现: 将构造函数私有化 在类中创建一个本类对象 提供一个方法可以获取到该对象 代码一 先初始化对象 称为:饿汉式 Single类一进内存,就已经创建好了对象. public class SingleModeDemo { public static void main(String[] args){…
1.确保一个类只有一个实例,自行提供这个实例并向整个系统提供这个实例. 1)理论 Java Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在. 使用Singleton的好处还在于可以节省内存,因为它限制了实例的个数,有利于Java垃圾回收(garbage collection). 使用单例模式最核心的一点是体现了面向对象封装特性中的"单一职责"和"对象自治"原则.很多时候我们要保证类的实例只有一个.我们可能在自己的代码中判断…
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17359719 特点 单例模式的特点: 1.只能有一个实例: 2.必须自己创建自己的一个实例: 3.必须给所有其他对象提供这一实例. 饿汉式单例模式 也称为预先加载法,实现方式如下: class Single { private Single()( Syustem.out.println("ok"); ) private static Single instance = new…
首先写个单例,懒汉模式: public class SingleDemo { private static SingleDemo s = null; private SingleDemo(){} public static SingleDemo getInstance(){ if(s == null){ s = new SingleDemo(); } return s; } } 写个测试类: public class ThreadDemo3 { public static void main(S…