面试题-Java基础(九)- 设计模式
2020-06-04 06:19
218 查看
1、常见的设计模式
- 单例模式
在应用程序中,一个类的实例只有一个,无法通过new 操作来创建实例,因为它的构造器是private的,一般通过getInstance去获取实例。getInstance()的返回值是一个对象的引用,并不是一个新实例。
- 观察者模式
对象间存在一对多的关系,当一个对象的状态发生改变的时候,其他依赖它的对象都会收到通知,并进行更新。
- 装饰者模式
对已有的业务逻辑进一步封装,使其增加额外地功能,例如Java中的IO流就使用了装饰着模式,用户在使用的时候可以进行任意的组装。一层一层的封装
- 适配器模式
将完全不同的事物联系在一起,就像生活中的变压器,使得额定电压为20伏的手机可以使用220伏的电源进行充电。
- 工厂模式
一个抽象的接口 car,多个抽象接口 car 的实现类 A,一个工厂类通过条件判对某一个实现类A*进行实例化。
- 代理模式
2、简单工厂模式和抽象工厂模式的区别?
简单工厂模式: 适用于小项目或者具体产品很少进行扩展的情况
- 工厂类角色:需要知道所有需要生产的产品类型,通过一定的逻辑判断去确定所需生产的产品。
- 抽象产品角色:所有产品所继承的父类或者实现的接口。
- 具体产品角色:工厂类所创建的对象就是该类的实例。
抽象工厂模式:系统中存在多产品族,而系统每一次只可能消费其中一族产品。同属于一个产品族是产品供其使用。
- 抽象工厂角色
- 具体工厂角色
- 抽象产品角色
- 具体产品角色
相关文章推荐
- 最全Android面试题大集合(Android、Java、计算机基础、设计模式)持续更新
- java基础知识记录--软件工程与设计模式(摘自张孝祥整理java面试题)
- Java设计模式之四(经典面试题:工厂模式在开发中的运用)
- Java设计模式之四(经典面试题:工厂模式在开发中的运用)
- Java基础:设计模式
- java 设计模式基础
- Java基础21--IO流--装饰设计模式--缓冲流
- 黑马程序员 _ java基础 _ 之装饰者设计模式
- 黑马程序员——java基础(总结、设计模式、java新特性)
- java设计模式基础之设计原则
- Java基础之装饰设计模式
- Java基础---Java---IO流-----BufferedReader、BufferedWriter、缓冲区、装饰设计模式及和继承的区别
- 黑马程序员----------java基础加强之多线程、单例设计模式
- 黑马程序员——JAVA基础之抽象和接口 , 模版方法设计模式
- 源自老毕Java基础教程--装饰设计模式
- 黑马程序员——学习Java基础之 io LineNumberReader 之装饰设计模式
- 黑马程序员——Java基础->单例设计模式
- Java 设计模式面试题
- java学习 第二章 设计模式基础
- Java基础06:Static;单例设计模式;对象初始化;构造函数;