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; }

http://java.sun.com/developer/technicalArticles/Interviews/bloch_effective_08_qa.html

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?

Stephen


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to