org.springframework.aop.support

## 类 ComposablePointcut

- java.lang.Object
- - org.springframework.aop.support.ComposablePointcut

- 所有已实现的接口:
    Serializable, Pointcut

      public class ComposablePointcut
      extends Object
      implements Pointcut, Serializable

  Convenient class for building up pointcuts. All methods return ComposablePointcut, so we can use a concise idiom like: `Pointcut pc = new ComposablePointcut().union(classFilter).intersection(methodMatcher).intersection(pointcut);`
  从以下版本开始:
    11.11.2003
  作者:
    Rod Johnson, Juergen Hoeller, Rob Harrop
  另请参阅:
    `Pointcuts`, 序列化表格

- - ### 字段概要

    - ### 从接口继承的字段 org.springframework.aop.Pointcut

      `TRUE`

  - ### 构造器概要

    构造器
    构造器和说明
    `ComposablePointcut()` Create a default ComposablePointcut, with `ClassFilter.TRUE` and `MethodMatcher.TRUE`.
    `ComposablePointcut(ClassFilter classFilter)` Create a ComposablePointcut for the given ClassFilter, with `MethodMatcher.TRUE`.
    `ComposablePointcut(ClassFilter classFilter, MethodMatcher methodMatcher)` Create a ComposablePointcut for the given ClassFilter and MethodMatcher.
    `ComposablePointcut(MethodMatcher methodMatcher)` Create a ComposablePointcut for the given MethodMatcher, with `ClassFilter.TRUE`.
    `ComposablePointcut(Pointcut pointcut)` Create a ComposablePointcut based on the given Pointcut.

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `boolean` | `equals(Object other)`
    `ClassFilter` | `getClassFilter()` Return the ClassFilter for this pointcut.
    `MethodMatcher` | `getMethodMatcher()` Return the MethodMatcher for this pointcut.
    `int` | `hashCode()`
    `ComposablePointcut` | `intersection(ClassFilter other)` Apply an intersection with the given ClassFilter.
    `ComposablePointcut` | `intersection(MethodMatcher other)` Apply an intersection with the given MethodMatcher.
    `ComposablePointcut` | `intersection(Pointcut other)` Apply an intersection with the given Pointcut.
    `String` | `toString()`
    `ComposablePointcut` | `union(ClassFilter other)` Apply a union with the given ClassFilter.
    `ComposablePointcut` | `union(MethodMatcher other)` Apply a union with the given MethodMatcher.
    `ComposablePointcut` | `union(Pointcut other)` Apply a union with the given Pointcut.

    - ### 从类继承的方法 java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### 构造器详细资料

    - #### ComposablePointcut

          public ComposablePointcut()

      Create a default ComposablePointcut, with `ClassFilter.TRUE` and `MethodMatcher.TRUE`.

    - #### ComposablePointcut

          public ComposablePointcut(Pointcut pointcut)

      Create a ComposablePointcut based on the given Pointcut.
      参数:
        `pointcut` - the original Pointcut

    - #### ComposablePointcut

          public ComposablePointcut(ClassFilter classFilter)

      Create a ComposablePointcut for the given ClassFilter, with `MethodMatcher.TRUE`.
      参数:
        `classFilter` - the ClassFilter to use

    - #### ComposablePointcut

          public ComposablePointcut(MethodMatcher methodMatcher)

      Create a ComposablePointcut for the given MethodMatcher, with `ClassFilter.TRUE`.
      参数:
        `methodMatcher` - the MethodMatcher to use

    - #### ComposablePointcut

          public ComposablePointcut(ClassFilter classFilter,
                                    MethodMatcher methodMatcher)

      Create a ComposablePointcut for the given ClassFilter and MethodMatcher.
      参数:
        `classFilter` - the ClassFilter to use
        `methodMatcher` - the MethodMatcher to use

  - ### 方法详细资料

    - #### union

          public ComposablePointcut union(ClassFilter other)

      Apply a union with the given ClassFilter.
      参数:
        `other` - the ClassFilter to apply a union with
      返回:
        this composable pointcut (for call chaining)

    - #### intersection

          public ComposablePointcut intersection(ClassFilter other)

      Apply an intersection with the given ClassFilter.
      参数:
        `other` - the ClassFilter to apply an intersection with
      返回:
        this composable pointcut (for call chaining)

    - #### union

          public ComposablePointcut union(MethodMatcher other)

      Apply a union with the given MethodMatcher.
      参数:
        `other` - the MethodMatcher to apply a union with
      返回:
        this composable pointcut (for call chaining)

    - #### intersection

          public ComposablePointcut intersection(MethodMatcher other)

      Apply an intersection with the given MethodMatcher.
      参数:
        `other` - the MethodMatcher to apply an intersection with
      返回:
        this composable pointcut (for call chaining)

    - #### union

          public ComposablePointcut union(Pointcut other)

      Apply a union with the given Pointcut.

      Note that for a Pointcut union, methods will only match if their original ClassFilter (from the originating Pointcut) matches as well. MethodMatchers and ClassFilters from different Pointcuts will never get interleaved with each other.

      参数:
        `other` - the Pointcut to apply a union with
      返回:
        this composable pointcut (for call chaining)

    - #### intersection

          public ComposablePointcut intersection(Pointcut other)

      Apply an intersection with the given Pointcut.
      参数:
        `other` - the Pointcut to apply an intersection with
      返回:
        this composable pointcut (for call chaining)

    - #### getClassFilter

          public ClassFilter getClassFilter()

      从接口复制的说明: `Pointcut`
      Return the ClassFilter for this pointcut.
      指定者:
        `getClassFilter` 在接口中 `Pointcut`
      返回:
        the ClassFilter (never `null`)

    - #### getMethodMatcher

          public MethodMatcher getMethodMatcher()

      从接口复制的说明: `Pointcut`
      Return the MethodMatcher for this pointcut.
      指定者:
        `getMethodMatcher` 在接口中 `Pointcut`
      返回:
        the MethodMatcher (never `null`)

    - #### equals

          public boolean equals(Object other)

      覆盖:
        `equals` 在类中 `Object`

    - #### hashCode

          public int hashCode()

      覆盖:
        `hashCode` 在类中 `Object`

    - #### toString

          public String toString()

      覆盖:
        `toString` 在类中 `Object`