GoF Java Examples