image.png

主要应对复杂对象

builder 插件 直接builder

  1. class BuildProduct{
  2. private String part1;
  3. private String part2;
  4. private String part3;
  5. private String part4;
  6. private BuildProduct(Builder builder) {
  7. part1 = builder.part1;
  8. part2 = builder.part2;
  9. part3 = builder.part3;
  10. part4 = builder.part4;
  11. }
  12. public static final class Builder {
  13. private String part1;
  14. private String part2;
  15. private String part3;
  16. private String part4;
  17. public Builder() {
  18. }
  19. public Builder part1(String val) {
  20. part1 = val;
  21. return this;
  22. }
  23. public Builder part2(String val) {
  24. part2 = val;
  25. return this;
  26. }
  27. public Builder part3(String val) {
  28. part3 = val;
  29. return this;
  30. }
  31. public Builder part4(String val) {
  32. part4 = val;
  33. return this;
  34. }
  35. public BuildProduct build() {
  36. return new BuildProduct(this);
  37. }
  38. }
  39. }