作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个类,它有多个子类,每个子类都实现自己的方法。其中一些子类具有我需要调用的通用方法。 java中有没有办法知道对象是否有方法(不使用instanceof
)?
最佳答案
这可能表明存在设计缺陷,但您始终可以使用反射来检查方法是否存在:
public static boolean hasMethod(Object obj, String methodName) {
return Arrays.stream(obj.getClass().getMethods())
.anyMatch(m -> m.getName().equals(methodName));
}
当然,这也可以进行改进以包含方法的签名,但基本思想保持不变。
关于java - 有没有办法在 Java 运行时检查对象是否具有特定方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37735523/
我是一名优秀的程序员,十分优秀!