commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stephen Colebourne <>
Subject [lang] LazyInitializer
Date Sat, 24 Oct 2009 12:36:09 GMT
I believe that we should remove this class.

The class performs no useful purpose, as there is a better way to use a 
separate class to create a value lazily:

// Lazy initialization holder class idiom for static fields
private static class FieldHolder {
      static final FieldType field = computeFieldValue();
static FieldType getField() { return FieldHolder.field; }

Since LazyInitializer requires the user to create a new instance of a 
new class anyway, the benefits of the 'advanced' lazy initializer code 
disappear (in fact, its worse, due to the volatile variable requiring a 
memory check every time, whereas the regular check above sets a simple 
static final.

Any justifications for keeping this?


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message