作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想将方法保存在 Enum 中,但 Class.getDeclaredMethod 抛出 NoSuchMethodException,那么我该如何处理呢?我的代码:
public enum Card {
OPENPRISON(false, Cards.class.getDeclaredMethod("", Player.class));
private boolean isInstant;
private Method method;
private Card(boolean isInstant, Method method){
this.method = method;
this.isInstant = isInstant;
}
public boolean isInstant() {
return isInstant;
}
public void run(Player p){
}
}
OPENPRISON 就是问题所在
最佳答案
一个直接的技术问题是您没有在调用 getDeclaredMethod()
时提供方法名称:
OPENPRISON(false, Cards.class.getDeclaredMethod("", Player.class));
一个更大的问题是为什么您需要使用反射。
枚举值是一个常量。使用反射可以做哪些使用静态方法无法轻松完成的事情?或者使用枚举之外的方法?
关于java - 尝试 - 捕获枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39807123/
我是一名优秀的程序员,十分优秀!