设计模式
让你更加了解程序的那些套路。
destiny- freedom
希冀
展开
-
UML类图
文章目录UML图基本介绍UML图分类:UML类图类图—依赖关系(Dependence)类图—泛化关系(generalization)类图—实现关系(Implementation)类图—关联关系(Association)类图—聚合关系(Aggregation)类图—组合关系(Composition) UML图基本介绍 UML——Unified modeling language UML (统一...原创 2020-03-26 20:24:06 · 296 阅读 · 0 评论 -
设计模式——迭代器模式
迭代器模式 也叫游标模式,源自于集合 List、Set package com.atguigu.iterator; import java.util.Iterator; import java.util.LinkedList; public class IteratorTest { public static void main(String[] args) { MyQueue<...原创 2020-03-23 20:42:20 · 74 阅读 · 0 评论 -
设计模式——模板方法模式
概念 抽象类体现的就是一种模板模式的设计,抽象类作为多个子类的通用模 板,子类在抽象类的基础上进行扩展、改造,但子类总体上会保留抽象 类的行为方式。 解决的问题 当功能内部一部分实现是确定的,一部分实现是不确定的。这时可以 把不确定的部分暴露出去,让子类去实现。 换句话说,在软件开发中实现一个算法时,整体步骤很固定、通用, 这些步骤已经在父类中写好了。但是某些部分易变,易变部分可以抽 ...原创 2020-03-01 20:32:36 · 140 阅读 · 0 评论 -
设计模式——装饰者模式
装饰者模式 在现有功能基础上添加新功能,不会影响原来的功能,动态的给对象添加新功能。 装饰者典型案例:IO流 package com.atguigu.decorator; public class DecoratorTest2 { public static void main(String[] args) { Person p = new Person("丹阳"); XiFu x...原创 2020-03-23 20:38:30 · 128 阅读 · 0 评论 -
设计模式——代理模式
代理模式 一个类的对象不想或者不能直接被访问的时候,可以使用代理模式 静态代理 package com.atguigu.proxy; public class ProxyTest { public static void main(String[] args) { CoalBossProxy cbp = new CoalBossProxy(); cbp.meet(); cbp....原创 2020-03-23 20:36:39 · 155 阅读 · 0 评论 -
设计模式——工厂模式
文章目录工厂模式简单工厂模式工厂方法模式 工厂模式 当有大量对象需要创建时,可以选择使用工厂模式 简单工厂模式 //简单工厂设计模式 class SimpleFactory{ public static Mobile createMobile(String type){ if("安卓".equals(type)){ return new Android(); }else if(...原创 2020-03-23 20:32:08 · 69 阅读 · 0 评论 -
设计模式——单例模式
设计模式: 设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格、以及解决问题的思考方式。设计模式免去我们自己再思考和摸索。就像是经典的棋谱,不同的棋局,我们用不同的棋谱。”套路” 单例设计模式 所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。如果我们要让类在一个虚拟机中只能产生一个对象,我们...原创 2020-02-29 22:17:50 · 75 阅读 · 0 评论 -
设计模式的七大原则
文章目录面向对象的回顾面向对象开发原则单一职责原则开闭(开放封闭)原则依赖倒置(倒转)原则接口隔离原则里氏替换原则迪米特法则(最少知道法则)合成/聚集复用原则设计模式 面向对象的回顾 面向对象编程(Object Oriented Programming OOP) 面向对象与面向过程: 面向过程:强调的是功能行为。 面向对象:将功能行为封装进对象,强调那个具备了功能行为的对象 ...原创 2020-03-23 13:29:52 · 164 阅读 · 0 评论