diff --git a/hutool-core/src/main/java/cn/hutool/core/bean/BeanUtil.java b/hutool-core/src/main/java/cn/hutool/core/bean/BeanUtil.java index 971eea0c4..2a6dedea5 100755 --- a/hutool-core/src/main/java/cn/hutool/core/bean/BeanUtil.java +++ b/hutool-core/src/main/java/cn/hutool/core/bean/BeanUtil.java @@ -116,8 +116,11 @@ public class BeanUtil { if (ClassUtil.isNormalClass(clazz)) { for (final Method method : clazz.getMethods()) { if (method.getParameterCount() == 0) { - if (method.getName().startsWith("get") || method.getName().startsWith("is")) { - return true; + final String name = method.getName(); + if (name.startsWith("get") || name.startsWith("is")) { + if(false == "getClass".equals(name)){ + return true; + } } } } diff --git a/hutool-core/src/test/java/cn/hutool/core/bean/BeanUtilTest.java b/hutool-core/src/test/java/cn/hutool/core/bean/BeanUtilTest.java index aef2b879d..147bb5679 100755 --- a/hutool-core/src/test/java/cn/hutool/core/bean/BeanUtilTest.java +++ b/hutool-core/src/test/java/cn/hutool/core/bean/BeanUtilTest.java @@ -892,4 +892,11 @@ public class BeanUtilTest { }, copyOptions); Assert.assertEquals("123", pojo.getName()); } + + @Test + public void hasGetterTest() { + // https://gitee.com/dromara/hutool/issues/I6M7Z7 + final boolean b = BeanUtil.hasGetter(Object.class); + Assert.assertFalse(b); + } }