code: @SuppressWarnings("unchecked")
  	public static Throwable getCausedBy(Throwable throwable, Class<? extends Exception>... causeClasses) {
  		Throwable cause = throwable;
  		while (cause != null) {
  			for (Class<? extends Exception> causeClass : causeClasses) {
  				if (causeClass.isInstance(cause)) {
  					return cause;
  				}
  			}
  			cause = cause.getCause();
  		}
  		return null;
  	}
docs: 获取由指定异常类引起的异常
  
  @param throwable 异常
  @param causeClasses 定义的引起异常的类
  @return 是否由指定异常类引起
  @since 4.1.13