反射API中新类[0]的java含义
我看到一个声明:
o1 = o1.getClass().getMethod(getter, new Class[0]).invoke(o1, new Object[0]);
有人能告诉我new Class[0]
和new Object[0]
在这种情况下做什么吗o1
是什么Object
你可以在下面搜索框中键入要查询的问题!
我看到一个声明:
o1 = o1.getClass().getMethod(getter, new Class[0]).invoke(o1, new Object[0]);
有人能告诉我new Class[0]
和new Object[0]
在这种情况下做什么吗o1
是什么Object
# 1 楼答案
getMethod()获取参数的类型列表。传递零长度数组意味着它没有参数。invoke()也是如此
从^{} 的文档中:
从^{} 的文档中:
那么,在该上下文中,您发布的行相当于:
就我个人而言,我发现使用
null
更具可读性(尽管使用零长度数组确实有自记录程序员未传递的参数类型的好处,如果这对您意义重大的话)# 2 楼答案
这意味着它告诉Class#getMethod找到一个名为
getter
的方法,该方法没有参数和