I have recently completed to deliver a Java training course in IBM Research Center in Haifa. It was one of my best courses so far. The students were highly motivated and highly talented which led to a very productive interaction.
The Visitor Design Pattern
The visitor design pattern allows us to add operations to objects that already exist without modifying their classes and without extending them.