E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
JAVA设计模式
Android进阶知识树——23种设计模式详解
关于设计模式很对开发者都知道很重要,但陆陆续续学习过很多次,但学过的设计模式也基本忘了差不多,能记住的还是之前使用的几个基本的,现在借此机会将23中设计模式完整的梳理学习下,
Java设计模式
分类:创建型模式
Alex@W
·
2019-09-10 11:04
Java
23种设计模式
设计模式
Android高级进阶之旅
Java架构设计学习
Java设计模式
学习笔记(四)——结构型模式
2.3结构型模式2.3.1适配器模式定义:适配器模式就是把一个类的接口转化为用户期待的另一个接口,从而使得原本因接口不一致无法一起工作的两个类能够一起工作。可以分为类结构型模式和对象结构型模式应用场景:系统需要使用现有的类,但此类的接口不符合系统的规范;想建立一个可以重复使用的类,使它能够和一些彼此之间没有多大关系的类、以及一些在将来可能引入的类协同工作,而这些类不一定有一致接口;通过接口转换,将
Ascend2015
·
2019-09-09 09:51
Java设计模式
每周博文精选 第36周
【
Java设计模式
】软件设计七大原则NoneNone计算机三级网络技术考过指南野心家-Andy阅读数137005从零讲JAVA,给你一条清晰地学习道路!该学什么就学什么!!
多鱼的夏天
·
2019-09-09 09:14
文章推荐
学习资料下载
Java面试题后台回复:Java面试题JavaWeb后台回复:JavaWebjQuery后台回复:jQuery
Java设计模式
后台回复:设计模式Mybatis学习后台回复:mybatisSpr
进击的老码农
·
2019-09-06 14:46
Java设计模式
之策略模式详解
原文链接:http://baijiahao.baidu.com/s?id=1601547440739500969&wfr=spider&for=pc前言在软件领域中,设计模式作为一种经典的开发实践常常需要我们去深入的理解,而策略模式作为设计模式的一种,使用频率也是相对来说比较高的,在Java中,当我们学习TreeSet集合的时候,就采用了经典的策略模式的思想,本文主要讲解策略模式。概念其思想是针对
~石头
·
2019-09-06 11:11
设计模式
Java
Java设计模式
之单例模式
定义:单例,单个实例,也就是说一个类只能获取一个实例。类别:饿汉模式、懒汉模式(不考虑线程安全问题)实现方式:通常在获取类的实例时,是用new来获取,new一次,获取一次实例,如何保证只能获取一次实例呢?1.首先要保证外部不能使用newxxx()的方式来获取实例,给xxx类的构造方法私有化。2.构造方法一旦私有化,外部就不可访问,需提供一个公共的方法来获取该类的实例,而且这个方法不能是实例调用的方
ITdevil
·
2019-09-05 16:11
Design
Pattern
java设计模式
(四)观察者模式
常见的设计模式之观察者模式观察者模式观察者模式组成实现代码:Observable观察者模式观察者模式组成实现代码:1.定义接口2.具体的接口3.具体主题角色4.具体的观察者5.测试Observable代码classobservableextendsObservable{voidcounter(intnumber){for(;number>=0;number--){this.setChanged()
qq_32827043
·
2019-09-04 22:05
观察者模式
设计模式
java
java
设计模式
Java设计模式
学习篇------第十一篇:装饰器模式(开发工具建议使用:IDEA)
装饰器模式装饰器模式(DecoratorPattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。我们通过下面的实例来演示装饰器模式的用法。其中,我们将把一个形状装饰上不同的颜色,同时又不改变形状类。介绍意图:动态地给一个对象添加
程序员阿忠
·
2019-09-04 09:46
Java设计模式
Java设计模式
1.工厂模式2.生成器模式3.观察者模式4.桥接模式5.代理模式6.状态模式7.访问者模式8.命令模式9.装饰器模式10.组合模式1.工厂模式工厂模式一般分为简单工厂、工厂、抽象工厂3种情况
HSXaaa123
·
2019-09-03 23:31
Java设计模式
Java
Java设计模式
六大原则的理解
原文链接:https://www.jianshu.com/p/068b2d0ce4e6https://www.jianshu.com/p/068b2d0ce4e6单一职责概念:对功能进行分类,代码进行解耦栗子:一个网络请求框架大致分为:请求类,缓存类,配置类;不能把这三个功能混合在一起,必须分成三个类分别去实现不同的功能里氏替换概念:在继承类时,除了扩展一些新的功能之外,尽量不要删除或者修改对父类
Not丶Perfect
·
2019-09-02 21:02
JAVA
2019-09-01 博客热门文章
一秒搭建ftp服务器,帮助你在局域网共享文件华为云阅读数4539程序员那些必须掌握的排序算法(上)#Temptation阅读数33504工作中常用到的Linux命令Java团长在csdn阅读数3381【
Java
多鱼的夏天
·
2019-09-02 09:43
文章推荐
【
Java设计模式
】软件设计七大原则
文章目录软件设计原则的分类开闭原则依赖倒置原则单一职责原则接口隔离原则迪米特法则(最少知道原则)里氏替换原则合成/复用原则(组合/复用原则)软件设计原则的分类开闭原则依赖倒置原则单一职责原则接口隔离原则迪米特法则(最少知道原则)里氏替换原则合成/复用原则(组合/复用原则)在设计模式中会有这7中软件设计原则的体现,但是值得注意的是这7钟设计原则在设计模式中的使用是有取舍的,有的可能是完整的体现,也可
沉晓
·
2019-08-31 00:00
Java
Java设计模式
【
Java设计模式
06】—— 装饰者模式
1定义装饰者模式:装饰者模式是以对客户端透明的方式动态地将责任附加到对象上,已达到扩展对象功能的目的。如果要扩展对象的功能,装饰者模式提供了比继承更有弹性的替代方案。装饰者模式的职责:动态地为一个对象增加新的功能。装饰者模式是一种用于代替继承的技术,无须通过继承增加子类就能扩展对象的新功能。使用对象的关联关系代替继承关系,更加灵活,同时避免类型体系的快速膨胀。2类图Component接口:装饰者和
牧_风
·
2019-08-29 21:23
JAVA设计模式
Java设计模式
——单例模式(Singleton)
引用部分摘自https://www.cnblogs.com/restartyang/articles/7770856.htmlgit地址:https://github.com/liuwang12138/design-pattern.git一、单例模式的概念单例模式(Singleton),也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统
炖冻豆腐
·
2019-08-29 17:42
Java
java设计模式
(三)代理模式
常见的设计模式之代理模式为什么要用代理模式?静态代理模式静态代理总结:动态代理模式创建动态代理步骤动态代理总结为什么要用代理模式?•中介隔离作用:在某些情况下,一个客户类不想或者不能直接引用一个委托对象,而代理类对象可以在客户类和委托对象之间起到中介的作用,其特征是代理类和委托类实现相同的接口。•开闭原则,增加功能:代理类除了是客户类和委托类的中介之外,我们还可以通过给代理类增加额外的功能来扩展委
qq_32827043
·
2019-08-29 17:24
java
设计模式
代理模式
java
设计模式
java设计模式
(二)策略模式
常见的设计模式之策略模式策略模式该模式缺点介绍(转载+翻译)策略模式该模式缺点介绍(转载+翻译)介绍意图:定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。主要解决:在有多种算法相似的情况下,使用if…else所带来的复杂和难以维护。何时使用:一个系统有许多许多类,而区分它们的只是他们直接的行为。如何解决:将这些算法封装成一个一个的类,任意地替换。关键代码:实现同一个接口。应用实例:1
qq_32827043
·
2019-08-29 17:20
java
设计模式
策略模式
java
设计模式
java设计模式
(一)单例模式
常见的五种设计模式之单例模式单例模式单例模式的优点使用场景单例模式的使用场景单例模式的注意事项多线程环境下单例模式的实现(转)1、为什么说饿汉式单例天生就是线程安全的?2、传统的懒汉式单例为什么是非线程安全的?3、实现线程安全的懒汉式单例的几种正确姿势单例模式与双重检查(Double-Checkidiom)单例模式与ThreadLocal小结单例模式在应用这个模式时,单例对象的类必须保证只有一个实
qq_32827043
·
2019-08-29 17:36
java
设计模式
【
Java设计模式
05】—— 适配器模式
1定义适配器模式:将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。适配器模式的好处是,客户不必为了应对不同的接口而每次都跟着改变,只需要将接口转换的部分通过适配器封装起来就可以了。2类图Client:客户端,接口调用方。Target:目标接口,客户端所期望使用的接口,也是适配器所要适配的接口。Adaptee:被适配者,系统原有的实现。Adapter:适配器,适配
牧_风
·
2019-08-29 16:31
JAVA设计模式
为什么用枚举类来实现单例模式越来越流行?
前言单例模式是
Java设计模式
中最简单的一种,只需要一个类就能实现单例模式,但是,你可不能小看单例模式,虽然从设计上来说它比较简单,但是在实现当中你会遇到非常多的坑,所以,系好安全带,上车。
平头哥的技术博文
·
2019-08-27 21:00
为什么用枚举类来实现单例模式越来越流行?
前言单例模式是
Java设计模式
中最简单的一种,只需要一个类就能实现单例模式,但是,你可不能小看单例模式,虽然从设计上来说它比较简单,但是在实现当中你会遇到非常多的坑,所以,系好安全带,上车。
平头哥的技术博文
·
2019-08-27 21:04
设计模式
java设计模式
之单例模式
java设计模式
之单例模式在Java开发过程中,很多场景下都会碰到或要用到单例模式,在设计模式里也是经常作为指导学习的热门模式之一,相信每位开发人员都用到过。那现在就来讲讲我对单例模式的了解吧!
Hxning.
·
2019-08-27 13:45
为什么用枚举类来实现单例模式越来越流行?
前言单例模式是
Java设计模式
中最简单的一种,只需要一个类就能实现单例模式,但是,你可不能小看单例模式,虽然从设计上来说它比较简单,但是在实现当中你会遇到非常多的坑,所以,系好安全带,上车。
平头哥的技术博文
·
2019-08-27 00:00
设计模式
java
单例模式
Java设计模式
一、职责型模式1.单例模式懒汉式单例:有两个很重要的细节。a.两重if的双重检查:第一个if判断的作用:是为了提高程序的效率,当Singleton对象被创建以后,再获取Singleton对象时就不用去验证同步代码块的锁及后面的代码,直接返回Singleton对象。第二个if判断的作用:是为了解决多线程下的安全性问题,也就是保证对象的唯一。b.使用volatile关键字来防止指令重排序。instan
红茶玛奇朵鸭
·
2019-08-26 14:05
Java设计模式
14:建造者模式
什么是建造者模式发现很多框架的源码使用了建造者模式,看了一下觉得挺实用的,就写篇文章学习一下,顺便分享给大家。建造者模式是什么呢?用一句话概括就是建造者模式的目的是为了分离对象的属性与创建过程,是的,只要记住并理解红字的几个部分,建造者模式你就懂了。为什么需要建造者模式建造者模式是构造方法的一种替代方案,为什么需要建造者模式,我们可以想,假设有一个对象里面有20个属性:属性1属性2...属性20对
五月的仓颉
·
2019-08-24 18:00
java设计模式
——装饰者模式
名词解释DecoratorPattern指在不改变原有对象的基础之上,动态给一个对象添加一些额外的职责,提供了比继承更有弹性的替代方案(扩展原有对象的功能),属于结构型模式。应用背景我们通常可以使用继承来实现功能的拓展,如果这些需要拓展的功能的种类很繁多,那么势必生成很多子类,增加系统的复杂性,同时,使用继承实现功能拓展,我们必须可预见这些拓展功能,这些功能是编译期就确定了,是静态的.使用装饰者模
江海
·
2019-08-22 16:40
java
基础知识
设计模式
结构型
java设计模式
——观察者模式
名词解释ObserverPattern(又叫发布订阅模式)定义了对象之间的一对多依赖,让多个观察者对象同时监听一个主体对象,当主体对象发生变化时,它的所有依赖者(观察者)都会收到通知并更新,属于行为型模式。写法JDK自带以订阅报纸为例,当人们订阅了报纸后,只要有新的报纸一发布,订阅了该报纸的人就能立即受到通知。报纸Newspaper类:publicclassNewspaperextendsObse
江海
·
2019-08-21 16:03
java
基础知识
设计模式
行为型
java设计模式
——适配器模式
名词解释AdapterPattern将两个不兼容的类纠合在一起使用,属于结构型模式,需要有Adaptee(被适配者)和Adaptor(适配器)两个身份应用背景我们经常碰到要将两个没有关系的类组合在一起使用,第一解决方案是:修改各自类的接口,但是如果我们没有源代码,或者,我们不愿意为了一个应用而修改各自的接口。怎么办?使用Adapter,在这两种接口之间创建一个混合接口(混血儿).**个人理解:**
江海
·
2019-08-20 15:35
java
设计模式
结构型
java设计模式
——委派模式
名词解释DelegatePattern进行任务的调度和分配,属于行为型模式委派模式跟代理模式很像,可以看做是一种特殊情况下的静态代理的全权代理,但是代理模式注重过程,而委派模式注重结果。委派模式不属于23种经典设计模式以Delegate结尾或者以Dispatcher开头的类,通常都是策略模式写法简单写法简单的写法,就是直接从委派模式的含义出发,让一个委派者来决定要将任务委派给哪一个被委派者来执行,
江海
·
2019-08-20 13:00
java
设计模式
java设计模式
——工厂模式
介绍由一个地方(工厂)来统一创建对象,保证创建对象的统一性,更符合标准化编程的思想简化调用逻辑分类简单工厂优点简单,一个类就能直接返回所需要的所有的,根据不同参数就可以创建不同对象缺点违背开闭原则,不利于创建复杂的对象,不利于扩展工厂方法只定义一个创建对象的接口,将具体的创建过程移交给具体的实现类优点符合开闭原则,提高了系统的扩展性缺点类的个数容易过多,多了之后对调用者会容易造成混淆抽象工厂是工厂
江海
·
2019-08-20 13:08
java
设计模式
创建型
java设计模式
——策略模式
名词解释StrategyPattern定义一系列算法,把它们一个个封装起来,并且使它们之间可以互相替换,此模式让算法的变化不会影响到使用算法的用户应用场景系统中有很多类,而他们的区别仅仅在于他们的行为不同一个系统需要动态地在几种算法中选择一种写法策略模式的写法很简单,其实就是先定义一个接口,然后让不同的算法来分别实现接口,这样在调用算法的地方,直接选择不同的算法实现类就可以了。通常我们的算法选择是
江海
·
2019-08-20 13:00
java
设计模式
行为型
行为型模式
1、xmind2、参考文章模式比较多,参考文章将在下面一一列举策略模式
Java设计模式
16——策略模式
Java设计模式
之策略模式策略模式–菜鸟教程模板方法模式
Java设计模式
之模板方法模式(TemplateMethod
千千千qqq
·
2019-08-19 08:09
java
基础
java设计模式
----工厂模式
简单工厂模式简单工厂模式不是23种里的一种,简而言之,就是有一个专门生产某个产品的类。比如下图中的鼠标工厂,专业生产鼠标,给参数0,生产戴尔鼠标,给参数1,生产惠普鼠标。工厂模式工厂模式也就是鼠标工厂是个父类,有生产鼠标这个接口。戴尔鼠标工厂,惠普鼠标工厂继承它,可以分别生产戴尔鼠标,惠普鼠标。生产哪种鼠标不再由参数决定,而是创建鼠标工厂时,由戴尔鼠标工厂创建。后续直接调用鼠标工厂.生产鼠标()即
上官杏林
·
2019-08-16 15:00
java设计模式
(十七):备忘录模式
一:备忘录模式什么叫备忘录,我想大家都明白是吧。在源信息发生灾变的情况下,能够实现做到及时的应灾处理,那么数据还原就是关键,而还原的数据怎么来就是备忘的由来吧。在备忘录中存在这样几个角色:(1)备忘发起人:即由谁来进行备份数据(2)备忘录:即备份的数据(3)备份恢复人:即由谁来恢复备份数据二:代码解释1、备忘录发起者packagetest;publicclassMemoRole{privatein
qq_35755863
·
2019-08-16 05:11
设计模式
结构型模式
参考的文章也比较多,下面将一一列举适配器模式:设计模式7-适配器模式(Adapter)总结整理与练习设计模式|适配器模式及典型应用装饰模式:设计模式3-装饰者模式(Decorator)全面解析+案例实践+总结
JAVA
千千千qqq
·
2019-08-15 18:19
设计模式
java
基础
java设计模式
(十六):命令模式
一:命令模式命令模式,看可以从名字看出来,就是命令。那么命令模式至少包含3个主体内容,命令发出者、命令内容,命令执行者。在官方的定义中:将一个请求封装陈一个对象,使用不同的请求对客户端进行参数化。命令模式的应用场景:(1)抽象化动作指令(2)支持操作取消命令模式的涉及的角色:(1)命令内容:包含命令接口抽象化和命令的具体实现(2)命令的发出者:命令的发出者(3)命令的执行者:命令执行者二:代码解析
qq_35755863
·
2019-08-15 08:42
命令模式
设计模式
【设计模式】单一职责原则
以下内容来自《
Java设计模式
》1单一职责原则单一职责原则是最简单的面向对象设计原则,它用于控制类的粒度大小。
秀叶寒冬
·
2019-08-09 22:09
【设计模式】开闭原则
以下内容来自《
Java设计模式
》1开闭原则开闭原则是面向对象的可复用设计的第一块基石,它是最重要的面向对象设计原则。
秀叶寒冬
·
2019-08-09 22:00
【设计模式】里氏替换原则
以下内容来自《
Java设计模式
》里氏代换原则里氏代换原则由2008年图灵奖得主、美国第一位计算机科学女博士、麻省理工学院的BarbaraLiskov(芭芭拉-利斯科夫)教授和卡内基-梅隆大学的JeannetteWing
秀叶寒冬
·
2019-08-09 22:54
【设计模式】依赖倒转原则
【设计模式】依赖倒转原则以下内容来自【
Java设计模式
】如果说开闭原则是面向对象设计的目标,那么依赖倒转原则就是面向对象设计的主要实现机制之一,它是系统抽象化的具体实现。
秀叶寒冬
·
2019-08-09 22:47
【设计模式】接口隔离原则
以下内容来自《
Java设计模式
》1接口隔离原则接口隔离原则定义如下:接口隔离原则(InterfaceSegregationPrinciple,ISP):使用多个专门的接口,而不使用单一的总接口,即客户端不应该依赖那些它不需要的接口
秀叶寒冬
·
2019-08-09 22:39
【设计模式】合成复用原则
以下内容来自《
Java设计模式
》1合成复用原则合成复用原则又称为组合/聚合复用原则(Composition/AggregateReusePrinciple,CARP),其定义如下:合成复用原则(CompositeReusePrinciple
秀叶寒冬
·
2019-08-09 22:32
java设计模式
-命令模式(Command)
命令模式:属于行为型模式。命令模式,将一个请求封装成一个对象,使你可以用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持撤销的操作。UML图如下:命令模式UML这里面有几个对象进行说明:Client:客户端。Invoker:请求者,用户请求不同的命令。Command:抽象命令类。ConcreteCommand:具体的命令类。Receiver:命令的接收者,也是命令的具体实现。在这里举
yiqiquhuxi
·
2019-08-09 11:51
java后端_百度一面
3.sychronized和reentrantlock实现原理4.volatile原理5.
java设计模式
,jdk里用到了哪些设计模式。6.NIO讲一讲。7.数据库两种引擎区别。8.热备份。
DoublePP
·
2019-08-08 23:00
java设计模式
-迭代器模式(Interator)
迭代器模式,属于行为型模式,提供一种方法顺序访问聚合对象的各个元素,而不暴漏该对象的内部表示。这句话理解起来很容易,在java中,可以理解为遍历集合对象,集合里面的对象是什么我不去理会,反正我给你遍历出来就行了。有人说这不就是java里面的Interator遍历?或者是for()循环遍历集合吗?是的,JDK中已经把集合和迭代器整合的非常到位了。所以我们可以直接使用迭代器Interator,不过呢,
yiqiquhuxi
·
2019-08-08 13:03
java设计模式
-代理模式(Proxy)
代理模式-属于结构性模式。代理模式:给某一对象提供一个代理对象,并持有被代理对象的引用。做个简单的比喻:1:想去旅游,我让旅游公司给我安排行程,他们给我购票,安排酒店,行程等等。这里的旅游公司就是个代理。2:我让黄牛拿着我的身份证,带我买票,黄牛就是我的代理。UML:代理模型代理模式分为静态代理,动态代理静态代理:通过编写具体的代理类和持有被代理对象,来完成代理过程。动态代理:动态的生成我们的被代
yiqiquhuxi
·
2019-08-07 10:50
java设计模式
-单例模式(Singleton)
单例模式(singleton),属于创建型模式单例模式实现方法有很多种,今天要讲的是其中两种,也是最简单,最常见的两种,饿汉模式和懒汉模式。单例模式,顾名思义,在整个系统中,该对象只有一个实例,其特性和我们类中static修饰的变量差不多,不论多少线程操作该变量,该变量线程共享,实例只有一份。有人会问,那直接用static不就行了,干嘛还要用单例模式呢,因为static修饰的只是变量,而我们要操作
yiqiquhuxi
·
2019-08-07 10:43
java设计模式
-适配器模式(Adapter)
适配器模式,属于结构性模式,更加关心的是代码的结构和复用,而不是对象的创建。适配器模式:别名Wrapper,为了将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。适配器模式类型:对象适配器,类适配器1:对象适配器客户所需要的数据,在提供客户的接口里面没有得到实现。这时候就需要提供新的接口,但是接口在某种环境下不能随便添加(比如
yiqiquhuxi
·
2019-08-07 10:55
Java设计模式
优化-单例模式
单例模式概述单例模式是一种对象创建模式,用于产生一个类的具体事例。使用单例模式可以确保整个系统中单例类只产生一个实例。有下面两大好处:对于频繁创建的对象,节省初第一次实例化之后的创建时间。由于new操作的减少,会降低系统内存的使用频率。减轻GC压力,从而缩短GC停顿时间创建方式:单例作为类的私有private属性单例类拥有私有private构造函数提供获取实例的public方法单例模式的角色:角色
Penguin
·
2019-08-07 00:00
volatile
线程安全
单例模式
java
设计模式
【
Java设计模式
】构造器模式
【定义】将构造过程与表示分开,以便于相同的构造过程创建不同的表示。如果对象的构造过程相对复杂,这样的构造模式会非常有效。【实例】我们需要根据需求组装相应的计算机,例如硬盘500G,内存8G,CPU8核等等。【实现】定义构造步骤:interfaceIBuilder{voidBuildBody();voidInsertWheels();voidAddHeadlights();ProductGetVeh
Day_and_Night_2017
·
2019-08-05 17:00
Java设计模式
【
Java设计模式
】状态模式
【定义】因为状态的改变,引发对象的行为改变。【实现】定义远程控制接口:abstractclassRemoteControl{publicabstractvoidpressSwitch(TVcontext);}定义关闭操作:classOffextendsRemoteControl{@OverridepublicvoidpressSwitch(TVcontext){System.out.println
Day_and_Night_2017
·
2019-08-05 17:07
Java设计模式
上一页
81
82
83
84
85
86
87
88
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他