diff --git a/src/main/java/com/alibaba/fastjson/util/JavaBeanInfo.java b/src/main/java/com/alibaba/fastjson/util/JavaBeanInfo.java index 445fb8145d..5a3de5aad9 100644 --- a/src/main/java/com/alibaba/fastjson/util/JavaBeanInfo.java +++ b/src/main/java/com/alibaba/fastjson/util/JavaBeanInfo.java @@ -325,7 +325,7 @@ public static JavaBeanInfo build(Class clazz // String[] lookupParameterNames = null; if (types.length > 0) { Annotation[][] paramAnnotationArrays = TypeUtils.getParameterAnnotations(creatorConstructor); - for (int i = 0; i < types.length; ++i) { + for (int i = 0; i < types.length && i < paramAnnotationArrays.length; ++i) { Annotation[] paramAnnotations = paramAnnotationArrays[i]; JSONField fieldAnnotation = null; for (Annotation paramAnnotation : paramAnnotations) {