Find suitable abstractions and refactor them into a separate piece of code.The win is a lot bigger if you make the new abstractions public supported parts of the API, but that is harder with the JDK.
Yep, I agree. Often that's my motivation to report RFE's e.g.: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6798511 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6695386 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6595143 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6812862 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6826329 -Ulf