我有一个类ServerFactory,如下所示:
public class ServerFactory{
private static Server sharedServer=null;
public static getSharedServer(){...}
}
我有一个类似的实用程序类:
public class AUtils{
private Server server;
public AUtils(){
this.server = ServerFactory.getSharedServer();
}}
问题:每次创建AUtils实例时会发生什么?我是否会使用服务器工厂中唯一的静态实例,或者每个AUtils对象都有一个单独的服务器实例?
答案 0 :(得分:3)
您每次都会使用静态实例。在AUtils
类中,您只需引用仅创建一次的实际singleton实例。
顺便说一下,我假设代码如下:
public static getSharedServer(){
if(sharedServer == null) {
sharedServer = ... //create server instance
}
return sharedServer;
}