One important feature of an inner class, as you know, is that it has access to the members of the class which contains it. So it might be that you write an outer class which has some particular purpose, and it exposes an inner class which has some related purpose. I'm thinking of Map and Map.Entry as an example of that. Actually there you have an example of an inner interface, which is clearly intended to be subclassed via implementation. From there it isn't too much of a stretch to imagine an inner class which is also intended to be subclassed. Naturally this could be an abstract class. (I also haven't ever created such a class, since my programming is also mostly for specific purposes.)
It's also true that
Java allows the programmer to do things which are useless or even stupid by combining features. For examples of useless and stupid things allowed by Java see pretty much most of the questions in the forums about certification exams here.