<servlet>
<servlet-name>context</servlet-name>
<servlet-class>Singleton</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
public class Singleton {
private static Singleton sing = null;
public Singleton() {
if(sing == null) {
sing = new Singleton();
}
System.out.println("Singleton+++++++++++++++++++");
sing = new Singleton();
}
}启动tomcat时,我就要执行这个类,构造方法里有一个if判断,现在的问题是:
有if判断,就不能执行下面的打印
没有if判断,就能执行
这是怎么回事啊
<servlet-name>context</servlet-name>
<servlet-class>Singleton</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
public class Singleton {
private static Singleton sing = null;
public Singleton() {
if(sing == null) {
sing = new Singleton();
}
System.out.println("Singleton+++++++++++++++++++");
sing = new Singleton();
}
}启动tomcat时,我就要执行这个类,构造方法里有一个if判断,现在的问题是:
有if判断,就不能执行下面的打印
没有if判断,就能执行
这是怎么回事啊
解决方案 »
- Maven Central 无法使用。
- Java 命令行 编译 参数 问题
- <param name="contentType">text/html</param> 注解怎么写
- linux 下 apache、tomcat 集成问题,集成后,apache可以处理后台静态页面,但是jsp页面不能传给tomcat处理。。。
- j2ee1.4和j2ee5有和区别
- struts 关于arraylist的问题 在线等
- 下拉框级联问题
- jetty载入WAR包时发生错误
- 请问s[i] = randShape();问题!!!!!!
- 15分,快来看看!
- spring的session和HibernateTemplate区别?
- [在线等]当weblogic从8升级到9时,出现java.lang.IllegalArgumentException,如何解决?
改成如下代码看看后台打印:public class Singleton {
private static Singleton sing = null;
public Singleton() {
if(sing == null) {
System.out.println("Singleton+++++++++++++++++++");//试试死循环
sing = new Singleton();
}
System.out.println("Singleton+++++++++++++++++++");
sing = new Singleton();
}
}
我想知道,第一次执行时,sing肯定是null,然后执行if方法,给sing实例化,这时它应该not null了才对呀。