AopExpressionMatchInterceptor implements StaticMethodsAroundInterceptor { @Override public Object afterMethod(Class clazz, Method method, Object[] allArguments, Class<?>[] parameterTypes, Object ret) { Method targetAopMethod = (Method) allArguments[1]; Class<?> targetAopClass = (Class<?>) allArguments[2]; if (targetAopClass != null && EnhancedInstance.class.isAssignableFrom(targetAopClass) && MatchUtil.isEnhancedMethod(targetAopMethod)) { return false; } return ret; }  @Override void beforeMethod(Class clazz, Method method, Object[] allArguments, Class<?>[] parameterTypes,
        MethodInterceptResult result); @Override Object afterMethod(Class clazz, Method method, Object[] allArguments, Class<?>[] parameterTypes,
        Object ret); @Override void handleMethodException(Class clazz, Method method, Object[] allArguments, Class<?>[] parameterTypes,
        Throwable t);  }
@Test public void afterMethod() { Object ret = interceptor.afterMethod(Object.class, null, new Object[] { methodMatcher, ReflectionUtils.findMethod(MockClass.class, "getSkyWalkingDynamicField"), MockClass.class, false }, new Class[0], true); Assert.assertEquals(false, ret); }