当前位置: 首页 > news >正文

男女做爰全过程网站南阳建站公司

男女做爰全过程网站,南阳建站公司,凡科网站建设好,重庆南坪网站建设公司文章目录 1.概念1.1 什么是策略模式1.2 优点与缺点 2.实现方式3. Java 哪些地方用到了策略模式4. Spring 哪些地方用到了策略模式 1.概念 1.1 什么是策略模式 它允许用户在不修改现有对象的代码的情况下向对象添加新的功能#xff1b;这种模式是通过创建一个包含该对象的包装… 文章目录 1.概念1.1 什么是策略模式1.2 优点与缺点 2.实现方式3. Java 哪些地方用到了策略模式4. Spring 哪些地方用到了策略模式 1.概念 1.1 什么是策略模式 它允许用户在不修改现有对象的代码的情况下向对象添加新的功能这种模式是通过创建一个包含该对象的包装对象来实现的从而扩展该对象的功能。 1.2 优点与缺点 优点: 1.灵活性策略模式提供了在运行时选择算法或行为的能力使得算法或行为的变化独立于使用它们的客户。 2.扩展性通过添加新的策略类可以很容易地扩展系统的行为符合开闭原则。 3.简化了代码策略模式将算法封装在单独的类中从而简化了上下文类使得功能划分更加清晰。 4.避免使用多重条件选择语句策略模式可以帮助避免复杂的条件语句如多重if-else或switch语句使代码更加优雅。 5.可维护性由于算法被封装在不同的类中因此代码更容易维护和理解。 缺点: 1.增加了系统的复杂性策略模式引入了更多的类这可能会增加系统的复杂性尤其是在策略数量较多时。 2.客户端必须知道不同的策略客户端必须知道可用的策略并决定使用哪一个这可能会导致客户端代码的复杂性增加。 3.策略之间的依赖性如果策略之间有依赖关系可能会导致系统变得更加复杂。 4.性能问题如果策略对象的创建和销毁开销较大可能会对性能产生影响尤其是在频繁切换策略的情况下。 5.管理策略类随着策略数量的增加管理这些策略类可能会变得困难尤其是在大型系统中。 2.实现方式 ① 定义策略接口 public interface Strategy {void execute(); }②创建实现了这个接口的具体策略类 public class ConcreteStrategyA implements Strategy {Overridepublic void execute() {System.out.println(Executing Strategy A);} }public class ConcreteStrategyB implements Strategy {Overridepublic void execute() {System.out.println(Executing Strategy B);} }③ 创建一个上下文类它持有一个策略对象的引用并通过这个引用调用执行方法 public class Context {private Strategy strategy;public Context(Strategy strategy) {this.strategy strategy;}public void setStrategy(Strategy strategy) {this.strategy strategy;}public void executeStrategy() {strategy.execute();} }④ 在客户端代码中使用上下文类和不同的策略 public class Client {public static void main(String[] args) {Context context new Context(new ConcreteStrategyA());context.executeStrategy(); // 输出: Executing Strategy Acontext.setStrategy(new ConcreteStrategyB());context.executeStrategy(); // 输出: Executing Strategy B} }3. Java 哪些地方用到了策略模式 排序算法Java的Collections.sort()方法可以接受一个Comparator接口的实例这个接口就是一个策略模式的应用。你可以为不同的排序需求提供不同的Comparator实现。 Java I/OJava的I/O类库中InputStream、OutputStream、Reader和Writer等抽象类可以看作是策略模式的上下文而它们各自的实现类如FileInputStream、BufferedInputStream等则充当具体的策略。 JDBCJDBCJava Database Connectivity使用策略模式来允许不同的数据库驱动实现。DriverManager类根据URL来选择合适的Driver实现而不同的Driver实现则对应不同的数据库连接策略。 命令行处理例如Apache Commons CLI或其他命令行处理库它们允许你定义不同的命令行选项处理策略。 设计模式许多设计模式的实现都可能用到策略模式比如工厂模式、命令模式等。 算法框架在算法框架中策略模式可以用来根据不同的输入或条件选择不同的算法实现。 业务规则引擎在业务规则引擎中策略模式可以用来根据不同的业务规则选择不同的处理策略。 策略模式在Spring框架中的应用Spring框架中的许多地方都使用了策略模式例如事务管理、数据源选择、消息中间件的连接等。 4. Spring 哪些地方用到了策略模式 事务管理Spring的事务管理支持多种事务管理策略如编程式事务管理使用TransactionTemplate和声明式事务管理使用Transactional注解。这些不同的策略可以通过配置来切换而不需要修改业务代码。 数据源选择在Spring中你可以配置多个数据源并通过TransactionManager和DataSource接口来切换不同的数据源实现。 消息中间件的连接Spring支持多种消息中间件如JMS、RabbitMQ、Kafka等。通过策略模式Spring允许你根据需要选择不同的消息中间件连接策略。 AOP面向切面编程Spring AOP允许你定义切面Aspect和通知Advice这些可以看作是策略模式的具体策略。你可以根据需要选择不同的通知类型如前置通知、后置通知等来增强目标对象的行为。 事件驱动编程Spring的事件驱动编程模型允许你定义不同的事件监听器Listener这些监听器可以看作是处理不同事件的策略。 资源访问Spring的Resource接口允许你以统一的方式访问不同类型的资源如文件系统、类路径、URL等而具体的Resource实现则充当不同的访问策略。 Bean的作用域Spring允许你为Bean定义不同的作用域如单例、原型、请求、会话等这些作用域可以看作是不同的生命周期管理策略。 数据绑定Spring的WebDataBinder允许你为不同的数据绑定场景定义不同的数据转换和格式化策略。
http://www.hkea.cn/news/14299339/

相关文章:

  • 唐山中小企业网站制作没广告的视频播放器app
  • 高淳城乡建设局网站免备案wordpress主机空间
  • 青岛黄岛网站建设公司电话搜房网
  • 什么网站好建设h5互动的网站
  • 静态网站公用头部如何调用标题婚庆公司起名字大全免费
  • 移动网站开发教材开发工具在哪里
  • 搭建个网站需要多少钱整形网站优化
  • 钢管网站建设湖南定制响应式网站有哪些
  • 网站设计模板怎么使用湖南电商平台网站建设
  • 鞍山网站设计制作网站网络营销渠道的功能有
  • 河南网站建设工作室和县建设局网站
  • 上海专业网站建设网站今天出入苏州最新通知
  • 网站快速排名技巧房地产开发商是干什么的
  • 怎么做网站内容公司网站运营维护单位
  • 建网站 可以看到访客吗昆山建设招标信息网站
  • 深圳品牌医疗网站建设新浪微博网站建设
  • 安康网站建设智能小程序wordpress 源码讲解
  • 网站推广 济南高校二级网站建设要求
  • 字牌标识公司网站网站编号 6019湖北雨水最新消息
  • 网站群 seo上饶商城网站建设
  • 查网站二级域名南化建设公司官网
  • 太原电商网站设计做百度手机网站优化
  • 群辉怎么做网站网页打不开视频播放不了是什么问题
  • 上海网站建设哪家快速上线集约化网站群建设方案
  • 注册网站不需要手机验证的小说下载网站哪个好
  • 做php网站都用框架吗企业网站制作商
  • 网站title设置网络广告营销的概念
  • 商机互联网站建设网站开发实训感想
  • 网站建设技术 翻译wordpress typecho
  • 网站建设总结与江苏省城市建设信用手册网站