使用Java
反射,可以实例化一个类的对象,甚至通过私有构造函数,例如
public class MyClass
{
private MyClass(Object p1, String p2)
{
// Constructor with no modifications to static code
}
}
一个可以做(在同一类或任何其他类中,为简化而省略异常处理)
public static final Constructor myClass;
static
{
myClass = MyClass.class.getConstructor(Object.class, String.class);
myClass.setAccessible(true);
}
然后创建MyClass
like的新实例
myClass.newInstance(new Object(), "Test");
newInstance()
鉴于这myClass
是静态的,上述对线程安全的调用是否是线程安全的?