Design pattern examples with Java