Why is the java.util.Scanner class declared 'final'?
I use the Scanner class for reading multiple similar files. I would like to extend it to make sure they all use the same delimiter and I can also add methods like skipUntilYouFind(String thisHere) that all valid for them all. I can make a utility-class that contain them, or embed the Scanner Class as a variable inside another class but this is more cumbersome. I have found some reasons to declare a class final, but why is it done here? Probably because extending it and overwriting some of it's methods would probably break it. And making it easier to overwrite methods would expose to much of