您的位置:首页 > 编程语言 > Java开发

面试题-Java基础(九)- 设计模式

2020-06-04 06:19 218 查看

1、常见的设计模式 

  • 单例模式
    在应用程序中,一个类的实例只有一个,无法通过new 操作来创建实例,因为它的构造器是private的,一般通过getInstance去获取实例。getInstance()的返回值是一个对象的引用,并不是一个新实例。
     
  • 观察者模式
    对象间存在一对多的关系,当一个对象的状态发生改变的时候,其他依赖它的对象都会收到通知,并进行更新。
     
  • 装饰者模式
    对已有的业务逻辑进一步封装,使其增加额外地功能,例如Java中的IO流就使用了装饰着模式,用户在使用的时候可以进行任意的组装。一层一层的封装
     
  • 适配器模式
    将完全不同的事物联系在一起,就像生活中的变压器,使得额定电压为20伏的手机可以使用220伏的电源进行充电。
     
  • 工厂模式
    一个抽象的接口 car,多个抽象接口 car 的实现类 A,一个工厂类通过条件判对某一个实现类A*进行实例化。
     
  • 代理模式

2、简单工厂模式和抽象工厂模式的区别?

简单工厂模式: 适用于小项目或者具体产品很少进行扩展的情况

  • 工厂类角色:需要知道所有需要生产的产品类型,通过一定的逻辑判断去确定所需生产的产品。
  • 抽象产品角色:所有产品所继承的父类或者实现的接口。
  • 具体产品角色:工厂类所创建的对象就是该类的实例。

抽象工厂模式:系统中存在多产品族,而系统每一次只可能消费其中一族产品。同属于一个产品族是产品供其使用。

  • 抽象工厂角色
  • 具体工厂角色
  • 抽象产品角色
  • 具体产品角色

 

下一节 Spring/Spring MVC

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: