系列文章目录
第一篇:设计模式之观察者模式
第二篇:设计模式之代理模式
第三篇:设计模式之责任链模式
第四篇:设计模式之建造者模式
前言
如果你编写代码的实体类中的属性很多的时候,我们就可以使用建造者模式,该模式也是必须要掌握的
何时使用:主要是用来构建复杂对象的。
提示:以下是本篇文章正文内容,将用两种方式实现责任链模式
一、实战建造者模式
这里就不做过多废话了,建造者模式使用起来也十分简单
这里我创建两个类,UserAllInfo,UserAllInfoBuilder ,也可以写在一个类中
基本信息类
public class UserAllInfo {
private String uid;
private String uname;
private String upwd;
private Integer uage;
private String udata;
private String sex;
public UserAllInfo() {
}
public UserAllInfo(String uid, String uname, String upwd, Integer uage, String udata, String sex) {
this.uid = uid;
this.uname = uname;
this.upwd = upwd;
this.uage = uage;
this.udata = udata;
this.sex = sex;
}
public String getUid() {
return uid;
}
public String getUname() {
return uname;
}
public String getUpwd() {
return upwd;
}
public Integer getUage() {
return uage;
}
public String getUdata() {
return udata;
}
public String getSex() {
return sex;
}
}
构建器类
public class UserAllInfoBuilder {
private String uid;
private String uname;
private String upwd;
private Integer uage;
private String udata;
private String sex;
public UserAllInfoBuilder setUid(String uid) {
this.uid = uid;
return this;
}
public UserAllInfoBuilder setUname(String uname) {
this.uname = uname;
return this;
}
public UserAllInfoBuilder setUpwd(String upwd) {
this.upwd = upwd;
return this;
}
public UserAllInfoBuilder setUage(Integer uage) {
this.uage = uage;
return this;
}
public UserAllInfoBuilder setUdata(String udata) {
this.udata = udata;
return this;
}
public UserAllInfoBuilder setSex(String sex) {
this.sex = sex;
return this;
}
public UserAllInfo Builder() {
return new UserAllInfo(uid,uname,upwd,uage,udata,sex);
}
}
测试类
//测试
public static void main(String[] args) {
UserAllInfo builder=new UserAllInfoBuilder()
.setUid(UUID.randomUUID().toString())
.setUname("测试")
.Builder();
System.out.println(builder.getUid());
System.out.println(builder.getUname());
}