#模式设计
##1、缺省模式(又叫做默认模式)
###1.1-有一个和尚接口,和尚接口的方法有吃斋、打坐、念经、习武,又有一个鲁智深要实现这个接口,但是他不想实现接口里的所有方法,他只想用和尚接口里的习武方法。那这个时候怎么办呢?
###1.2-解决方案:找一个中间类,这个类可以是抽象类,也可以是具体类,让这个类去实现和尚接口,这个中间类为鲁智深鲁智深服务,鲁智深需要什么方法,它就实现什么方法,其他的方法不用管,然后鲁智深去继承这个中间类,继承之后只用习武这个方法就可以了
###1.3-具体实现:
鲁智深继承——————>中间类 中间类实现——————>和尚接口
##2、单例模式
###1、懒汉式特点:
只能有一个实例(静态构造方法私有)
自己实例化自己的唯一实例(自己声明自己 静态私有)
自己推广自己(对外提供new自己的public static方法)
private Singleton(){};
private static Singleton singleton=null;
public static getSingleton(){
if(singleton==null){
singleton=new Singleton();
}
return singleton;
}
###2、饿汉式单例模式
private Singleton() {}
private static final Singleton single = new Singleton1();
//静态工厂方法
public static Singleton1 getInstance() {
return single;
}
JAVA的缺省模式和单例模式
时间: 2024-10-10 08:48:18
JAVA的缺省模式和单例模式的相关文章
Java设计模式——创建型模式之单例模式
一.概述 作为第一个出场的设计模式,有必要先介绍一下设计模式(引用自百度百科): 设计模式(Design Pattern)是一套被反复使用.多数人知晓的.经过分类的.代码设计经验的总结. 使用设计模式的目的:为了代码可重用性.让代码更容易被他人理解.保证代码可靠性. 设计模式使代码编写真正工程化:设计模式是软件工程的基石脉络,如同大厦的结构一样. 设计模式概念的介绍,参见:http://blog.jobbole.com/101076/ 其中涉及的设计原则的概念,参见随笔:http://www.c
Java中的GOF23(23中设计模式)--------- 单例模式(Singleton)
Java中的GOF23(23中设计模式)--------- 单例模式(Singleton) 在Java这这门语言里面,它的优点在于它本身的可移植性上面,而要做到可移植的话,本身就需要一个中介作为翻译工作,以达到本地和Java的统一,但是就这点而言就相当的消耗资源,所以就Java程序员需要不断的去优化自己的代码.今天所研究的单例模式就是在这样的条件下产生的, 所谓单例模式,就是只有一个实例,在堆里面只有一个.假如我们的实例,就需要一个,但是会多次用到,这样的话就会出现很尴尬的问题. 比如: Win
java中单态模式或单例模式(Singleton)有什么意义?
8.单态模式或单例模式(Singleton) (视频下载) (全部书籍)单态模式有什么用呢?想一下Adobe Photoshop ,处理两张图,会启动两个photoshop吗?多耗费内存呀! ( Consider Adobe or oracle, process two images with two adobes?),所以单态模式在公司编程是非常重要的.有很多场合都要求,对象只能存在一个,多了的话就太耗费资源.(马克-to-win) class Photoshop {/* 通过调试发现写成 s
IOS设计模式之一(MVC模式,单例模式)
本文原文请见:http://www.raywenderlich.com/46988/ios-design-patterns. 由 @krq_tiger(http://weibo.com/xmuzyq)翻译,如果你发现有什么翻译错误,请与我联系谢谢. iOS 设计模式-你可能已经听说过这个词,但是你真正理解它意味着什么吗?虽然大多数的开发者可能都会认为设计模式是非常重要的,然而关于设计模式这一主题的文章却不多,并且有时候我们开发者在写代码的时候也不会太关注它. 在软件设计领域,设计模式是对通用问题
java23种模式之单例模式
JAVA23种设计模式四--单例模式 单例模式是一种常用的软件设计模式,在它的核心结构中只包含一个被称为单例类的特殊类.通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源.如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案. 什么是单例模式? 一个类有且仅有一个实例,并且自行实例化向整个系统提供. 也就是说,在整个程序空间中,该类只存在一个实例对象. GoF对单例模式的定义: 保证一个类,只有一个实例存在,同时提供能对该实例
java设计模式--创建型模式
2016-04-24 10:10:34 创建型模式:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式 注意:工厂模式可以分为三类: 1)简单工厂模式(Simple Factory) 2)工厂方法模式(Factory Method) 3)抽象工厂模式(Abstract Factory) 这三种模式从上到下逐步抽象,并且更具一般性.GOF在<设计模式>一书中将工厂模式分为两类:工厂方法模式(Factory Method)与抽象工厂模式(Abstract Factory).将简单工厂模式
Javascript模式(一) 单例模式
function A(){ // 存储实例对象 var instance; // 重写构造函数,只返回闭包内的局部变量instance A = function(){ return instance; } // 重写原型为实例本身 之后定义在原型上的属性和方法会直接赋在该实例上 A.prototype = this; // 实例化 instance = new A(); // 重写构造函数 instance.constructor = A; // 第一次实例化时返回重写之后的构造函数的实例 re
Java装饰模式(Decorator模式)
Decorator常被翻译成"装饰",我觉得翻译成"油漆工"更形象点,油漆工(decorator)是用来刷油漆的,那么被刷油漆的对象我们称decoratee.这两种实体在Decorator模式中是必须的. Decorator定义:动态给一个对象添加一些额外的职责,就象在墙上刷油漆.使用Decorator模式相比用生成子类方式达到功能的扩充显得更为灵活. 为什么使用Decorator 我们通常可以使用继承来实现功能的拓展,如果这些需要拓展的功能的种类很繁多,那么势必生
JAVA设计模式之代理模式
学编程吧JAVA设计模式之代理模式发布了,欢迎通过xuebiancheng8.com来访问 一.概述 给某一个对象提供一个代理,并由代理对象来完成对原对象的访问.代理模式是一种对象结构型模式. 二.适用场景 当无法直接访问某个对象或访问某个对象存在困难时可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,委托对象与代理对象需要实现相同的接口. 三.UML类图 四.参与者 1.接口类:Subject 它声明了真实访问者和代理访问者的共同接口,客户端通常需要针对接口角色进行编程. 2.代理类