设计模式
百年城
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
设计模式---代理模式(Proxy)
代理模式:为一个对象提供一个替身,以控制这个对象的访问。即通过代理对象访问目标对象。好处:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能。 被代理的对象可以是远程对象,创建开销大的对象或者需要安全控制的对象 代理模式有不同的形式,主要有静态代理、动态代理(JDK代理、接口代理)和Cglib代理(可以在内存动态创建对象,无需实现接口,属于动态代理) 一、静态代理 1、静态代理模式的基本介绍 静态代理在使用时,需要定义接口或者父类,被代理对象(即目标对象)于代理对象一起实现相同的接口或者继原创 2020-07-31 21:59:59 · 173 阅读 · 0 评论 -
设计模式七大原则
设计模式的目的: 代码重用性(相同功能的代码,不用多次编写) 可读性(编程规范性,便于他人阅读和理解) 可扩展性(需要增加新的功能时,方便,称为可维护性) 可靠性(新增功能时,对原有功能不影响) 高内聚,低耦合 一、单一职责原则(Single responsibility principle, 缩写:SRP) 说明:一个类或者模块只负责完成一个职责。一个模块、类、方法不要过多承担任务。 实例参考 CRUD的Mapper层 什么时候需要使用单一职责进行代码重构? 类依赖过多其他类或者代码直接的依赖关系过原创 2020-07-21 12:56:02 · 213 阅读 · 0 评论 -
设计模式----单例
模式定义:保证一个类只有一个实例,并且提供一个全局访问点 什么时候使用单例:重量级的对象,不需要多个实例。例如线程池,数据库连接池。 懒汉模式:延迟加载,只有真正使用的时候,才开始实例化。 线程安全问题 double check 加锁优化 编译器(JIT),CPU有可能对指令进行重排序,导致使用到尚未初始化的实例,可以通过添加volatile关键字进行修饰,对于volatile修饰的字段,可以防止指令重排。 package com.lf..原创 2020-07-09 15:26:31 · 186 阅读 · 0 评论
分享