我可以在Java8中引用方法名吗?

我可以在Java8中引用方法名吗?,java,Java,我的代码中有这个 if (method.getName().equals("ignore")) { 它指向一个静态方法 我可以在MyClass::ignore上调用getName吗?不,没有静态(编译时)方法将方法引用为方法对象。您必须通过(或其他适当的方法)动态检索它。或者使用字符串值作为您当前正在执行的名称。上面的方法是什么类型的?或者它是假设性的?我感觉这里可能有一个XY问题类型的问题。有一个简短的答案,还有一个更长更正确的答案,这取决于背景信息,在你告诉我们之前我们还不知道。换句话说,

我的代码中有这个

if (method.getName().equals("ignore")) {
它指向一个静态方法


我可以在
MyClass::ignore
上调用
getName
吗?

不,没有静态(编译时)方法将方法引用为
方法
对象。您必须通过(或其他适当的方法)动态检索它。或者使用
字符串
值作为您当前正在执行的名称。

上面的
方法是什么类型的?或者它是假设性的?我感觉这里可能有一个XY问题类型的问题。有一个简短的答案,还有一个更长更正确的答案,这取决于背景信息,在你告诉我们之前我们还不知道。换句话说,可能有一种更好的方法来完成您正在尝试做的事情,而不是通过这种方式获取方法名。请告诉我们您的问题的详细信息,而不是您试图如何解决它,以便我们能够提供准确的帮助。@HovercraftFullOfEels方法的类型为java.lang.reflect.method。我尽量不使用硬编码字符串值,而是使用方法引用。所指向的方法正在检查is IgnoreLogging.ignore。@MichaelPetch我问abotu新的Java8功能!