If an OS upgrade breaks lots of programs or even one heavily used program, chances are users will blame Apple, not the developers of said apps.<p>Also, part of the reason that it takes them long to fix certain bugs may be concerns about seemingly internal changes breaking applications. They cannot refactor methods (rename or even change an argument list) in any class they ship because someone, somewhere, might override one of its methods.<p>In that light, I think the change makes sense. Of course, Apple could just add private&#x2F;sealed to all their classes, if only just before shipping, but why make the typical choice more work to write than the exception?