类签名中的“()V”是什么意思?
我用Javassist创建了一个没有实际方法的构造函数
CtConstructor c = CtNewConstructor.make ( argTypes, null, newClass );当我试图拿出这堂课的签名时
c.getSignature();我懂了
public Echo ()V我很困惑“ V”是什么意思?我期望任何一个公共Echo(); 或类似的东西
回答:
JVM使用一种紧凑的方式来存储方法签名,其中的构造函数被认为是特例。
例如:
()表示不带参数的方法V表示它什么也不返回
该计划的其他部分是:
B-字节C-字符D-双F-浮动I-整数J- 长S-短V-无效Z-布尔值[-括号后面的东西数组L[类名];-此类的实例,点变为斜线([args])[返回类型]-方法签名
例如:
public int foo(String bar, long[][] baz)会成为
(Ljava / lang / String; [[J] I请参见Sun ^ H ^ H ^
HOracle网站上的规范
以上是 类签名中的“()V”是什么意思? 的全部内容, 来源链接: utcz.com/qa/398805.html

