Final == Good
Wednesday, May 24th, 2006 Here’s an interesting article that is totally, completely 180 degrees wrong. I’ve said this before, and I’ve said it again, but I’ll say it one more time: final
should be the default. Java’s mistake was not that it allowed classes to be final. It was making final
a keyword you had to explicitly request rather than making finality the default and adding a subclassable
keyword to change the default for those few classes that genuinely need to be nonfinal. The lack of finality has created a huge, brittle, dangerously breakable infrastructure in the world of Java class libraries.