
设计模式
风雨雾花丶
这个作者很懒,什么都没留下…
展开
-
设计模式 --- 工厂模式factory ---- 创建型
参考:https://www.zhihu.com/question/20367734定义任何可以产生对象的方法或者类,都可以吃称之为工厂单例也是一种工厂,灵活控制生产过程,权限,修饰,日志专门生产对象,把对象的实例化和初始化都封装起来只需要获取相关对象实例,而不关心实际的生产过程应用场景1.任意定制交通工具2.任意定制生产过程3.任意定制产品一族简单工厂常用于具体的工具很少扩展的情况下,因为内部实现简单,直接可以使用,如果需要扩展,则需要修改内部实现,就违反了开闭原则原创 2021-09-05 22:31:21 · 228 阅读 · 0 评论 -
设计模式 --- 策略模式strategy ---- 行为型
参考:https://zhuanlan.zhihu.com/p/273325520应用场景当程序中需要对多个对象,或者是多个方法进行比对同样的类需要适用于不同的场景的时候或者同样一个方法,里面会涉及到很多不同的分支和逻辑时(此处体会不深,有大佬发现的话,欢迎来喷)举个栗子比如现在需要对猫狗进行排序,那么是对比体重,还是身高,或者还需要对牛进行排序时,那么就需要不同的策略来实现不同的比对优点:可以定义多个不同的类来实现不同的比对,实现业务代码上的解耦缺点:定义了多个类,增加原创 2021-09-05 21:25:14 · 185 阅读 · 0 评论 -
设计模式 --- 单例模式singleton --- 创建型
应用场景只需要一个实例,在代码和内存方面只希望它有一个实例出来关键点第一:构造方法设计成私有的无法new 出来第二:提供获取实例的方法相关概念1.class.forName("")可以加载类名,静态变量load到内存,就会实例化2.哈希码相同也不一定是同一个对象3.final修饰的变量必须要初始化写法相关饿汉式优点:类加载到内存 就实例化一个单利 jvm保证线程安全,简单实用缺点:不管用到与否,类装载时就完成了实例化代码块pub...原创 2021-09-05 20:55:07 · 225 阅读 · 0 评论