The singleton pattern is a design pattern that is used to restrict instantiation of a class to one object Singletons (being often a bad choice) are classes that can have only one instance throughout the whole program. For example a SingletonConfigFile might look like this. It is for reading one file only. It would make sense for this to be a config file. If your class can be instantiated more than once, for different files, it is not singleton. Don't use this code - it doesn't take into account concurrency problems which are a whole different area of discussion. public SingletonConfigFile { private static String filename = "config.xml"; private File file; private static SingletonConfigFile instance;
About Java and it's related concepts..