Hvis jeg skulle prøve at give en forklaring på forskellen ville det lyde nogenlunde sådan.
Betragt et Singleton object som ét centralt access point til en global service
Du har måske en applikation hvis variabler skal initieres fra en property fil ved
opstart og bruges flere steder i systemet (baggrundsfarve, tekstfarve etc.),når du
laver det som en Singleton vil objectet kun blive instantieret én gang, selvom du
kører GlobaleVariabler.getGV().x) (ref.
http://www.eksperten.dk/spm/548764) 1 million
gange og din property fil loades kun én gang, nemlig når getGV() kaldes første gang.
Din applikation kræcer måske også at brugeren skal foretage sig nogle ting, inden vedkommende
må tilgå andre dele af applikationen, dette kan nemt styres gennem en bolsk variabel
i Singleton objectet, men ville være meget vanskeligt med en statisk klasse, der default
ville initiere en bolsk værdi == false;
Bedre kan jeg nok ikke gøre det.