Visa Inc. interview question

Describe various design patterns and their practical uses (from java perspective)