The name (and javadocs) imply that MouseAdapter
is an adapter (the design pattern). But I don't see it as such - it doesn't adapt anything to anything, at first sight at least
The only adaptation that happens is that you can pass an instance of MouseAdapter
to any method that expects either of the interfaces. So, you make it possible to use a MouseListener
instance where only MouseMotionListener
is expected. But there is no "translation" happening. And it does not conform to the UML of GoF - in the "class adapter" version it is expected that a call to one method invokes a method from the adaptee.
So, is that an adapter (design pattern), or is it just a random name that causes confusion?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…