JavaSE之设计模式

2022/4/4 22:19:05

本文主要是介绍JavaSE之设计模式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

设计模式

致命三连

  1. 什么是:是前辈对代码开发经验的总结是解决一系列问题的套路。是一套用来提高代码复用性,可维护性,可读性,稳健性以及安全性的解决方案。

 

类与类之间的关系

继承关系(extends)

继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力。

实现关系

实现指的是一个class类实现interface接口(可以是多个)的功能,实现是类与接口之间最常见的关系。

依赖关系

就是一个类A可能会用到另一个类B,所以将类B作为类A的参数传入到类A,这个可能具有偶然性,临时性,非常弱的关系

关联关系

两个类之间语义级别相同,是一种强依赖关系。他是长期性的,是平等的关系

  1. 聚合关系:has-a关系,关联关系中的一种,是部分与整体的关系。两类之间有各自的声明周期。当整体不存在在时,部分还存在。

  2. 组合关系:cintains-a关系,关联关系的特例,比聚合关系更强,同样体现部分与整体,可两类之间的生命周期相等,一个不存在另一个也将不存在。

 

单例模式

致命三连

  1. 什么是:为了节省内存资源,保证数据内容的一致性,对某个类要求只能创建一个实例

分类

  1. 懒汉式:在调用功能时就创建,线程不安全|不同步

    创建步骤

    1. 私有的静态的该类的引用

    2. 构造器私有化

    3. 公共的静态的访问方式,为了保证多个线程同时加载线程安全要在方法名上加synchronized锁住该方法。

  2. 饿汉式:在类加载完成之后就创建对象,线程安全|同步 创建步骤

    1. 私有的静态的该类的引用

    2. 构造器私有化

    3. 公共的静态的访问方式(newInstance)

 

代理模式

致命三连

分类

  1. 静态代理

    1. 代理与真实角色实现相同接口

    2. 代理角色持真实角色引用

    3. 代理行为

  2. 动态代理

 

简单工厂模式

  1. 抽象产品角色

  2. 具体产品角色

  3. 工厂角色

注意:字符串比较是否相等需要使用equals方法进行比较字符串的内容,建议常量放在.的前面,避免空指针异常的出现

 



这篇关于JavaSE之设计模式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程