博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
两周多学完Java 23种设计模式
阅读量:4163 次
发布时间:2019-05-26

本文共 1313 字,大约阅读时间需要 4 分钟。

       最近两周任务不是很繁重,对于一个刚入职4个月的菜鸟来说,学习设计模式并灵活使用简直天方夜谭;但是当我询问我导师需要学点啥的时候?“《Java设计模式》,这个必须要学”,一句简单粗略的话就打发我了。我花了将近两周多的时间看了一部分《Java设计模式》、google网上大佬的博客总结和样例展示,阅读一些Java的底层源码,让我对Java设计模式有了一个全面的认识和理解。

      接下来我会每周抽时间,献上我所理解的Java设计模式,总结前辈们的经验,并融会贯通,在项目中尝试着使用简单的设计模式,并消化比对不同设计模式之间的区别。

(一)Java设计模式大体上分为三类:

(1)创建型设计模式 (5种):工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式;

(2)结构型设计模式 (7种):适配器模式、装饰器模式、代理模式、组合模式、外观模式、享元模式、桥接模式;

(3)行为型设计模式 (11种):解释器模式、模板模式、访问者模式、中介者模式、策略模式、备忘录模式、状态模式、观察者模式、迭代器模式、命令模式、职责链;

(二)具体三种不同设计模式分类解释:

(1)创建型模式:在软件设计中对象的创建和对象的使用是分开的,因为对象的创建会消耗掉系统的很多资源,所以会单独对对象的创建进行研究,从而能够高效地创建对象就是创建型模式要探讨的问题;

(2)结构型模式:如何设计对象的结构、继承和依赖关系会影响到后续程序的维护性、代码的健壮性、耦合性等,也是很多开发者需要注意的地方;

(3)行为型模式:行为模式不仅描述对象或类的模式,还描述它们之间的通信模式;这些模式刻画了在运行时难以跟踪复杂的控制流,它们将你的注意力从控制流转移到对象间的联系方式上来;行为类模式使用继承机制在类间分派行为,如:模板模式;行为型模式则使用对象聚合、组合而不是继承,一些行为对象模式描述了一组对等的对象怎样相互协作以完成其中任一对象都无法单独完成的任务,如:职责链、中介者和观察者模式等。

(三)具体设计模式列表如下:

加油,坚持,我会持续更新Java设计模式列表展示,一起监督学习!

创建型模式:

《Java设计模式》之 单例模式:

《Java设计模式》之 简单工厂模式:

《Java设计模式》之 工厂方法模式:

《Java设计模式》之 抽象工厂模式:

《Java设计模式》之 建造者模式:

《Java设计模式》之 原型模式:

结构型模式:

《Java设计模式》之 享元模式:

《Java设计模式》之 外观模式:

《Java设计模式》之 代理模式:

《Java设计模式》之 装饰者模式:

《Java设计模式》之 桥接模式:

《Java设计模式》之 适配器模式:

行为型模式:

《Java设计模式》之 迭代器模式:

《Java设计模式》之 访问者模式:

《Java设计模式》之 中介者模式:

《Java设计模式》之 策略模式:

《Java设计模式》之 观察者模式:

《Java设计模式》之 命令模式:

《Java设计模式》之 备忘录模式:

《Java设计模式》之 模板模式:

《Java设计模式》之 状态模式:

《Java设计模式》之 职责链模式:

转载地址:http://acxxi.baihongyu.com/

你可能感兴趣的文章
Oracle中将毫秒数转换为timestamp类型的两种方法
查看>>
mybatis配置and rownum< minus 查询第几行到第几行数据的sql原型和mybatis原型。
查看>>
oracle的concat函数使用问题。
查看>>
eclipse编辑状态下怎样让指定行左移或右移?
查看>>
plsql developer如何导入导出表结构和数据以及如何复制表结构和数据?
查看>>
oracle如何去除某个字段中两边的空格?
查看>>
plsql developer如何在窗口列表直接可以修改表格中的数据?
查看>>
java自定义注解有什么作用?
查看>>
ORACLE中通过SQL语句(alter table)来增加、删除、修改字段
查看>>
js的Object对象如何访问中间有 . 点号的属性(键),获得其值?
查看>>
@ManyToOne和@OneToMany 注解
查看>>
Java集合(1) - List集合源码解析
查看>>
Java集合(2) - Map与AbstractMap源码解析
查看>>
Java集合(3) - HashMap源码解析与常见问题(一)
查看>>
Java集合(4) - HashMap-put()源码解析与常见问题(二)
查看>>
Java集合(5) - HashMap查删源码解析与常见问题(三)
查看>>
Java集合(6) - LinkedHashMap源码解析
查看>>
Java集合(7) - TreeMap源码解析
查看>>
Java集合(8) - Set与AbstractSet源码解析
查看>>
Java多线程(2) - 多线程之线程安全详解(synchronized、Lock)
查看>>