Peter Becker wrote: > kirk wrote: > >> [email protected] wrote: >> >> >>> On Feb 17, 6:15 am, Alexander Snaps <[email protected]> wrote: >>> >>> >>> >>>> On Sun, Feb 15, 2009 at 7:13 PM, Reinier Zwitserloot >>>> <[email protected]>wrote: >>>> >>>> >>>> >>>> >>>>> I mark any immutable class final, because if it isn't, then you can't >>>>> rely on its immutability (any subclass is assignment compatible and is >>>>> not neccessarily immutable!). >>>>> >>>>> >>>>> >>>> While I tend to agree with marking "type" classes as final, I don't believe >>>> that a class being immutable is reason enough to mark it final. >>>> >>>> >>>> >>> If it's not final, it probably isn't immutable. Take java.io.File. >>> Please. >>> >>> >>> >> Marking a class as final is a whole different ball game than marking a >> variable as final. For example, marking String as final was a HUGE >> mistake IMHO. It prevented people from making some very useful >> extensions. It's also responsible for a lot of code bloat. I'm not >> against making a class final. That said, to do so because of the need to >> mother other developers shouldn't be one of them. >> >> > If String wouldn't be final, then its immutability could not be > guaranteed, which would mean you > final class doesn't mean the value is immutable, it means that the class cannot be extended.
Regards, Kirk --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaposse?hl=en -~----------~----~----~----~------~----~------~--~---
