java中常用的设计模式都有哪些?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中常用的设计模式都有哪些?相关的知识,希望对你有一定的参考价值。
您好:
java中的设计模式有23种,具体如下:
创建型
抽象工厂模式、工厂方法、建造者模式、原型模式、单态模式
结构型
适配器模式、桥接模式、组合模式、外观模式、装饰者模式、享元模式、代理模式、
行为型
责任链模式、命令模式、解释器模式、迭代模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式
常见的有七种,具体如下:单例模式、工厂模式、建造(Builder)模式、观察者模式、适配器(Adapter)模式、代理模式、装饰模式
举个例子:
通过调用getInstance()方法来创建实例。
其他不一一举例,仅供参考!希望对你有帮助
参考技术A下面给你介绍5种设计模式:
1.单例设计模式
所谓单例设计模式简单说就是无论程序如何运行,采用单例设计模式的类(Singleton类)永远只会有一个实例化对象产生。具体实现步骤如下:
(1) 将采用单例设计模式的类的构造方法私有化(采用private修饰)。
(2) 在其内部产生该类的实例化对象,并将其封装成private static类型。
(3) 定义一个静态方法返回该类的实例。
2.工厂设计模式
程序在接口和子类之间加入了一个过渡端,通过此过渡端可以动态取得实现了共同接口的子类实例化对象。
3.代理设计模式
指由一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其他相关业务的处理。比如生活中的通过代理访问网络,客户通过网络代理连接网络(具体业务),由代理服务器完成用户权限和访问限制等与上网相关的其他操作(相关业务)。
4.观察者设计模式
所谓观察者模式,举个例子现在许多购房者都密切观察者房价的变化,当房价变化时,所有购房者都能观察到,以上的购房者属于观察者,这便是观察者模式。
java中可以借助Observable类和Observer接口轻松实现以上功能。当然此种模式的实现也不仅仅局限于采用这两个类。
5.适配器模式
如果一个类要实现一个具有很多抽象方法的接口,但是本身只需要实现接口中的部分方法便可以达成目的,所以此时就需要一个中间的过渡类,但此过渡类又不希望直接使用,所以将此类定义为抽象类最为合适,再让以后的子类直接继承该抽象类便可选择性的覆写所需要的方法,而此抽象类便是适配器类。
参考技术B Java 中的23 种设计模式: Factory(工厂模式), Builder(建造模式), Factory Method(工厂方法模式), Prototype(原始模型模式),Singleton(单例模式), Facade(门面模式), Adapter(适配器模式), Bridge(桥梁模式), Composite(合成模式), Decorator(装饰模式), Flyweight(享元模式), Proxy(代理模式),Command(命令模式), Interpreter(解释器模式), Visitor(访问者模式),Iterator(迭代子模式), Mediator(调停者模式), Memento(备忘录模式),Observer(观察者模式), State(状态模式), Strategy(策略模式),Template Method(模板方法模式), Chain Of Responsibleity(责任链模式)本回答被提问者采纳 参考技术C 1.单例模式(有的书上说叫单态模式其实都一样)该模式主要目的是使内存中保持1个对象
2.工厂模式
该模式主要功能是统一提供实例对象的引用。看下面的例子:
public class Factory
public ClassesDao getClassesDao()
ClassesDao cd = new ClassesDaoImpl();
return cd;
interface ClassesDao
public String getClassesName();
class ClassesDaoImpl implements ClassesDao
public String getClassesName()
System.out.println("A班");
class test
public static void main(String[] args)
Factory f = new Factory();
f.getClassesDao().getClassesName();
这个是最简单的例子了,就是通过工厂方法通过接口获取对象的引用
3.建造模式
该模式其实就是说,一个对象的组成可能有很多其他的对象一起组成的,比如说,一个对象的实现非常复杂,有很多的属性,而这些属性又是其他对象的引用,可能这些对象的引用又包括很多的对象引用。封装这些复杂性,就可以使用建造模式。
4.门面模式
这个模式个人感觉像是Service层的一个翻版。比如Dao我们定义了很多持久化方法,我们通过Service层将Dao的原子方法组成业务逻辑,再通过方法向上层提供服务。门面模式道理其实是一样的。
5.策略模式
这个模式是将行为的抽象,即当有几个类有相似的方法,将其中通用的部分都提取出来,从而使扩展更容易。 参考技术D 有本书叫做Java 中的23 种设计模式,不过常用的有如下:Factory(工厂模式), Builder(建造模式), Factory Method(工厂方法模式), Prototype(原始模型模式),Singleton(单例模式), Facade(门面模式), Adapter(适配器模式), Bridge(桥梁模式), Composite(合成模式), Decorator(装饰模式), Flyweight(享元模式), Proxy(代理模式),Command(命令模式), Interpreter(解释器模式), Visitor(访问者模式),Iterator(迭代子模式), Mediator(调停者模式), Memento(备忘录模式),Observer(观察者模式), State(状态模式), Strategy(策略模式),Template Method(模板方法模式), Chain Of Responsibleity(责任链模式)
Java编程常用的工具都有哪些?
在当今的互联网信息发展的时代,IT行业已经成为了热门行业发展之一,凌阳教育的老师曾经说过Java也取而代之的已经成为现在的主流,对于Java编程中我们经常都会常见的一些常用的工具,下面小编就带大家来了解一下吧:
1.ServiceLoader-加载服务主要是用阿里获取接口的所有实现
Java开发人员常常希望将使用和创建组件的内容区分开来,这通常是通过创建一个描述组件动作的接口,并使用某种中介创建组件实例来完成的。
2.SCanner
有无数Java工具能帮助您构建解析器,很多函数语言已成功构建解析器函数库(解析器选择器)。但如果要解析的是逗号分隔值文件,或空格分隔文本文件,又怎么办呢?大多数工具用在此处就过于隆重了,而String.split()又不够。(对于正则表达式,请记住一句老话:“您有一个问题,用正则表达式解决。那您就有两个问题了。”)
3.Timer
Java.util.Timer和TimerTask类提供了方便、相对简单的方法可在定期或一次性延迟的基础上执行任务。
4.StAX-解析XML文件
当XML第一次出现在很多Java开发人员面前时,有两种基本的解析XML文件的方法。SAX解析器实际是由程序员对事件调用一系列回调方法的大型状态机。DOM解析器将整个XML文档加入内存,并切割成离散的对象,它们连接在一起形成一个树。该树描述了文档的整个XMLInfoset表示法。这两个解析器都有缺点:SAX太低级,无法使用,DOM代价太大,尤其对于大的XML文件—整个树成了一个庞然大物。
比较luckly的是,Java开发人员找到第三种方法来解析XML文件,通过对文档建模成“节点”,它们可以从文档流中一次取出一个,检查,然后处理或丢弃。这些“节点”的“流”提供了SAX和DOM的中间地带,名为“StreamingAPIforXML”,或者叫做StAX。(此缩写用于区分新的API与原来的SAX解析器,它与此同名。)StAX解析器后来包装到了JDK中,在Javax.xml.stream包。
上面就是Java编程常用的一些开发工具,想要学习的人可以多多复习复习,对于大家的Java学习应该也是有一定的帮助的
以上是关于java中常用的设计模式都有哪些?的主要内容,如果未能解决你的问题,请参考以下文章