随笔 - 91  文章 - 0 评论 - 1 阅读 - 22184
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package study;
 
 
import lombok.Data;
 
@Data
public class Student  {
    Integer age;
    String name;
    String address ;
    public Student() {
    }
 
    public Student(Builder builder){
        this.name = builder.name;
    }
 
    public static  Builder builder() {
        return new Builder();
    }
    public static final class Builder{
        String name;
        Integer age;
 
        public Builder age (Integer age){
            this.age  = age;
            return this;
        }
        public Builder name (String name){
            if (name ==null){
                return this;
            }
            this.name  = name;
            return this;
        }
 
        public Student build(){
 
            return new Student(this);
        }
    }
 
    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                '}';
    }
}

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package patterns.builder;
 
import study.Student;
 
public class Test {
    public static void main(String[] args) {
        Student empty = new Student(); //student1
        Student student =  Student.builder()
                .name(empty.getAddress())
                .age(18)
                .build();
        System.out.println("student = " + student);
 
    }
}

  

 

posted on   mljqqh  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示