用java反射机制 创建单例模式的类可以吗?

2024年11月18日 07:34
有4个网友回答
网友(1):

private 构造函数一般用于Singleton模式,指的是整个应用只有本类的一个对象,一般这种类都有一个类似getInstance()的方法!下面是一个Singleton的例子:
public class User {
private static User user = null;
private User(){
}

public User getInstance(){
if(null == user){
user = new User();
}
return user;
}
}

网友(2):

通过
Constructor[] getDeclaredConstructors()
这个方法获得所有构造器,然后可以得到私有的构造器,
使用 cons. setAccessible(true) 突破私有构造。
然后可以创建无限个单例实例。

网友(3):

可以啊。反射机制可以找到java类的私有的构造方法

网友(4):

反射可以访问私有的,应该可以创建。你可以试一试