乐鱼电竞

    教育行业A股IPO第一股(股票代码 003032)

    全国咨询/投诉热线:400-618-4000

    Java常用的设计模式有哪些?【Java面试题】

    更新时间:2021年03月17日16时32分 来源:乐鱼电竞 浏览次数:

    设计模式是呗编程者总结出来的一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验。掌握几种常用的设计模式,对于Java应聘者来说十分重要,比如单例模式、工厂模式、建造者模式等等,接下来就来简单介绍一下这几种常见的设计模式和它们的应用场景。


    (1)考察目标

    考官主要是对一些常用设计模式和代码抽取优化能力的考核,问题可能涉及6大设计原则及23种设计模式。

    (2)题目分析

    比较熟悉的有:

    单例模式:

    保证一个类仅有一个实例,并提供一个全局访问点,比如一些配置文件或者管理类可以设计为单例,我们常用的线程池也是单例的。

    模板方法:

    在定义好的算法骨架下,允许子类为一个或多个步骤提供实现,一次性实现算法的不变部分,将可变部分留给子类实现,当子类实现代码逻辑雷同时,可以使用此设计模式。

    工厂模式:创建对象需要大量的重复代码时,通过子类实现方法来创建对象。如Spring中通过工厂模式将创建对象的任务交给容器管理。

    建造者模式:

    讲复杂对象的构建和表示分离,适用于流程固定,但是顺序不一定固定的场景。如需要给一个对象多次给不同的属性赋值,可以使用链式调用传参,最后生成对象。

    另外,如策略模式,观察者模式,模板方法模式,foreach中的迭代器模式,spring 中ASM的访问者模式,动态代理等都有一些了解。

    (3)应用场景

    JavaEE应用中,Spring用于创建IOC容器的监听器就是基于观察者模式的。

    Spring中获取FileSystemResource和ClassPathResource等功能雷同的类时使用模板方法。

    单例模式:包含懒汉饿汉式以及不同的变种,工厂类设计模式一般也设计为单例。项目中的一些配置,或者引入外部的sdk需要创建管理类,或者封装自己的框架时,需要用到单例

    工厂方法:在编码时不能预见需要创建哪种类的实例。


    (4)总结

    本题主要考察的是:

    1)常用设计模式

    2)代码抽取优化能力


    猜你喜欢:

    Java设计模式之单例模式以及单例所引发的思考

    设计模式-责任链

    乐鱼电竞java培训

    0 分享到:
    和我们在线交谈!
    【网站地图】【sitemap】