java中方法的名称是字符串吗?

发布于 2024-08-25 12:48:25 字数 183 浏览 1 评论 0原文

java中方法的名称是字符串吗?为什么或为什么不?

所以如果我有类似的内容:

public static int METHODNAME (some parameters or not) 
{
something to do ;
}

METHODNAME 是字符串吗?

in java is the name of a method a string? why or why not?

so if i have something like:

public static int METHODNAME (some parameters or not) 
{
something to do ;
}

is METHODNAME a string?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

山川志 2024-09-01 12:48:25

不,这是一个符号。但是,通过 reflection 您可以查找使用其名称的字符串版本的方法(如果有用的话)。

No, it's a symbol. However, via reflection you can look up the method using a string version of its name if that's useful.

将军与妓 2024-09-01 12:48:25

如果你问是否可以执行:“methodName”() 或 $command() 并让它执行你在 PhP 中命名的方法。答案是否定的。

如果您询问方法名称是否以字符串形式存储在某处,答案是肯定的。您可以使用反射来访问它。例如:

Method[] methods = Double.class.getMethods();
for(Method m : methods) {
    System.out.println("Method: "+m.getName());
}

参考您的编辑。不,它不是该上下文中的字符串。

If you asking whether or not you can do: "methodName"() or $command() and have it execute the method named as you can in PhP. The answer is no.

If you're asking whether or not the method name is stored as a String somewhere, the answer is yes. You can access it using reflection. For example:

Method[] methods = Double.class.getMethods();
for(Method m : methods) {
    System.out.println("Method: "+m.getName());
}

In reference to your edit. No it is not a String in that context.

顾忌 2024-09-01 12:48:25

你可以这样做,David:

import java.lang.reflect.*;

Class C = Class.forName("yourClass");
Method methods[] = C.getDeclaredMethods();
for (int i = 0; i < methods.length; i++) 
{  
               Method m = methlist[i];
               System.out.println(m.getName());
}

如果 METHODNAME 在你的类中,它最终会打印出“METHODNAME”作为字符串。

You could do this, David:

import java.lang.reflect.*;

Class C = Class.forName("yourClass");
Method methods[] = C.getDeclaredMethods();
for (int i = 0; i < methods.length; i++) 
{  
               Method m = methlist[i];
               System.out.println(m.getName());
}

And it would eventually print out "METHODNAME," as a string, if METHODNAME was in yourClass.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文