Item2:consider a builder when faced with many constructor parameters
When a constructor method has more than one parameter, you can consider using the builder approach for processing.
Instance code:
Public classnutritionfacts {Private Final intservingsize; Private Final intservings; Private Final intcalories; Private Final intfat; Private Final intsodium; Private Final intcarbohydrate; Public Static classbuilder{//The following two parameters are required Private Final intservingsize; Private Final intservings; Private intCalories = 0; Private intFat = 0; Private intSodium = 0; Private intcarbohydrate= 0; PublicBuilder (intServingsize,intservings) { This. servingsize =servingsize; This. servings =servings; } PublicBuilder Calories (intval) {Calories=Val; return This; } PublicBuilder Fat (intval) {Fat=Val; return This; } PublicBuilder Sodium (intval) {Sodium=Val; return This; } PublicBuilder Carbohydrate (intval) {Carbohydrate=Val; return This; } Publicnutritionfacts Build () {return NewNutritionfacts ( This); } } Privatenutritionfacts (Builder builder) {Servingsize=builder.servingsize; Servings=builder.servings; Calories=builder.calories; Fat=Builder.fat; Sodium=Builder.sodium; Carbohydrate=builder.carbohydrate; }}
How to use:
Public class Test { publicstaticvoid main (string[] args) { new nutritionfacts.builder ( calories). Sodium (+). Carbohydrate (). build ();}
Effective Java Item2:consider a builder when faced with many constructor parameters