java对象设计模式之Builder模式探索
设计目的:解决代码的可读性
常规构建一个对象,属性不清晰,若属性过多,就会模糊!
build模式如下(在原有类中构建一个静态内部类,此类作用主要用于展示):
即把属性先传到内部类,通过设置内部类的属性,在传递给原始内的构造函数,在此中间,即可展示属性,对比如下:
原始代码:
package com.wpwet.test.mode;
public class Person {
private String name;
private Integer age;
private Integer score;
private Double wight;
private Double heiht;
public Person(String name, Integer age, Integer score, Double wight, Double heiht) {
this.name = name;
this.age = age;
this.score = score;
this.wight = wight;
this.heiht = heiht;
}
public Person (Build build){
this.name = build.name;
this.age = build.age;
this.score = build.score;
this.wight = build.wight;
this.heiht = build.heiht;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public Integer getScore() {
return score;
}
public void setScore(Integer score) {
this.score = score;
}
public Double getWight() {
return wight;
}
public void setWight(Double wight) {
this.wight = wight;
}
public Double getHeiht() {
return heiht;
}
public void setHeiht(Double heiht) {
this.heiht = heiht;
}
static class Build{
private String name;
private Integer age;
private Integer score;
private Double wight;
private Double heiht;
public Build name(String name){
this.name = name;
return this;
}
public Build age(Integer age){
this.age = age;
return this;
}
public Build score(Integer score){
this.score = score;
return this;
}
public Build wight(Double wight){
this.wight = wight;
return this;
}
public Build heiht(Double heiht){
this.heiht = heiht;
return this;
}
public Person build( ){
return new Person(this);
}
}
public static void main(String[] args) {
Person person = new Person("xiaoing",10,90,32.0,90.0);
Person person1 = new Build().name("xiaoming").age(16).heiht(90.0).score(90).wight(32.0).build();
}
}
1.本站所有资源收集于互联网,仅用于学习和研究,若用于违法,与本站无关,仅限学习交流请勿用于商业用途。
2.会员在本站下载的VIP素材后,只拥有使用权,著作权归原作者及49vps所有。
3.VIP素材,未经合法授权,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4.如果素材损害你的权益,请联系客服删除。
49资源网 » java对象设计模式之Builder模式探索
49资源网 » java对象设计模式之Builder模式探索