• 设计模式之策略模式总结(八)


    点我

    策略模式定义了一系列的算法 , 并且将每一个算法封装起来, 而且使它们可以相互替换. 策略迷失让算法独立于使用者


    时序图

    ps:abc应该是实现的关系而不是继承


    在原文中我第一次真正使用注解

    • 注解的用法 传送门
    • 四大参数 使用频率
      • @Target 修饰对象 高
      • @Retention 有效范围 高
      • @Documented 标记公共成员 一般
      • @Inherited 允许子类继承父类的注解 低
    • 注解的常用场景已经如何实现注解的使用
      • 首先我们需要扫描指定路径下的的所有class文件
        • new File( classLoader.getResource(uri) ) //创建文件或目录
        • File.listFiles(new FileFilter(){ accpet( return true)}) //规定文件的类型
      • 遍历class文件获取class对象
        • isAssignableFrom 判断该对象是不是其父类实现或接口或本身
      • 处理注解对象, 返回使用后的注解
        • 获取class对象的注解
        • instanceof 判断该注解是不是其实现或子接口实例

    策略模式简单理解步骤: 结合实际应用场景

    • 商城优惠策略 先来个价格打折规则(工厂) 具体条件打折实现
    • 消费者累计消费满额打折 根据这个策略是有问题的, 那就是不能支持策略叠加和消费规则的bug, 这里我是跪着看的 我又看到新的注解, 嵌套注解(实际上类似于工厂模式) 并且全文又把之前的动态代理复习了, 这个买东西的场景必须是真实存在的 继续
  • 相关阅读:
    LeetCode 414. Third Maximum Number
    LeetCode 498. Diagonal Traverse
    LeetCode 520. Detect Capital
    LeetCode 503. Next Greater Element II
    LeetCode 496. Next Greater Element I
    LeetCode 508. Most Frequent Subtree Sum
    LeetCode 515. Find Largest Value in Each Tree Row
    LeetCode 516. Longest Palindromic Subsequence
    输入输出流
    java中举例说明对象调用静态成员变量
  • 原文地址:https://www.cnblogs.com/denghailei/p/6723088.html
Copyright © 2020-2023  润新知