/** *当我们要创建的一个对象需要很多的属性的时候,不需要设置过多的构造函数,建造者模式将发挥作用 */ class Builder{ static class Student{ String name="liurong"; int age; String address="china"; int score=90; static class StudentBuilder{ String name="zhangsan"; int age=23; String address; int score; public StudentBuilder setName(String name){ this.name=name; return this; } public StudentBuilder setAge(int age){ this.age=age; return this; } public StudentBuilder setAddress(String address){ this.address=address; return this; } public StudentBuilder setScore(int score){ this.score=score; return this; } public Student builder(){ return new Student(this); } } public Student(StudentBuilder studentBuilder){ this.address=studentBuilder.address; this.age=studentBuilder.age; this.score=studentBuilder.score; this.name=studentBuilder.name; } } public static void main(){ Student student1=new Student.StudentBuilder().setAddress("xxx").setAge(200).setName("xxx").setScore(23).builder(); } }