计算 Java 函数的签名

2022-09-01 11:36:12

有没有办法计算Java类的方法的签名?类似签名
表示一个函数,该函数采用 as 参数
并返回 。([Ljava/lang/String;)VString[]void

计算签名的规则是什么?


答案 1

它始终是一组括号,将参数的类型能指括起来,一个接一个,没有逗号或任何东西,后面跟着一个类型能指,用于结束 paren 之后的返回值。这很简单。

此页面上有一个类型签名表

Signature    Java Type
Z    boolean
B    byte
C    char
S    short
I    int
J    long
F    float
D    double
V    void
L fully-qualified-class ;    fully-qualified-class
[ type   type[]

最后两个意味着,要命名一个类,例如,你说,,并命名一个数组(例如),你说,而数组的数组是。Ljava/lang/Object;int[Iint[[I

如果你想根据反射从字面上计算Java代码中的签名,那就很简单了;只需使用上面的表格来处理对象和数组的规则。


答案 2

只需在包含文件的文件夹中运行即可。它将以100%的准确性告诉您。无需猜测这些事情。javap -s <class-name>.class


推荐