我尝试通过这个例子来理解它们之间的区别:
import java.lang.reflect.*;
public class ClassDemo {
public static void main(String[] args) {
try {
// returns the Constructor object of the public constructor
//Class cls[] = new Class[] { String.class };
Constructor c = String.class.getConstructor();
System.out.println(c);
}
catch(Exception e) {
System.out.println(e);
}
}
}
我得到了这个结果:
public java.lang.String()
在这个例子中,如果我替换:
Constructor c = String.class.getConstructor();
by:
Constructor c = String.class.getConstructor((Class<?>[]) null);
我得到了相同的结果......为什么?有什么微妙之处吗?提前感谢您。