If I do not initialize count variable in my code and let it initialize by default value, my code displays correctly count = 1. But if I initialize to 0 in my code -> private static int count = 0, it prints 0. Can any one please explain what is the reason?
class Singleton3 {
private final static Singleton3 obj = new Singleton3();
private static int count;
private Singleton3() {
count++;
}
public static Singleton3 getInstance() {
return obj;
}
public static int getCount() {
return count;
}
}
public class SingletonImplEagerInitialization {
public static void main(String[] args) {
Singleton3.getInstance();
Singleton3.getInstance();
Singleton3.getInstance();
Singleton3.getInstance();
Singleton3.getInstance();
System.out.println("count: " + Singleton3.getCount());
}
}