diff --git a/spring-core/src/main/java/org/springframework/util/ReflectionUtils.java b/spring-core/src/main/java/org/springframework/util/ReflectionUtils.java index 775c4401c3..cddfb145f7 100644 --- a/spring-core/src/main/java/org/springframework/util/ReflectionUtils.java +++ b/spring-core/src/main/java/org/springframework/util/ReflectionUtils.java @@ -527,16 +527,8 @@ public abstract class ReflectionUtils { * Determine whether the given method is originally declared by {@link java.lang.Object}. */ public static boolean isObjectMethod(@Nullable Method method) { - if (method == null) { - return false; - } - try { - Object.class.getDeclaredMethod(method.getName(), method.getParameterTypes()); - return true; - } - catch (Exception ex) { - return false; - } + return (method != null && (method.getDeclaringClass() == Object.class || + isEqualsMethod(method) || isHashCodeMethod(method) || isToStringMethod(method))); } /**