I want to put in all the design patterns in java