On Thu, 31 Mar 2005 15:06:05 -0500 (EST), Frank W. Zammetti <[EMAIL PROTECTED]> wrote: > On Thu, March 31, 2005 1:57 pm, Craig McClanahan said: > > Every single time I've created a static utilities class (and that > > includes things like Commons BeanUtils) I have regretted it, because > > users are stuck with the functionality you provide and cannot > > customize. > > I don't follow... isn't the problem you mention exactly what inheritance > is meant to solve? You aren't making those utility classes final, are > you? :)
Assume a helper: public class Helper { public static void doSomething(String foo); } and your clients can call Helper.doSomething(). Now, I'd like to specialize the behavior of doSomething() to meet my needs. Can't be done without changing all my calls to use a different class name instead. An implementation class implementing a specific interface (and with non-static methods, obviously) can be replaced without requiring that. Craig --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]