码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Java修仙之基础功法篇->构建者模式


    构建者模式调用过程(原理)详解及案例

    1. public class Test {
    2. public static void main(String[] args) {
    3. //备注:请直接使用@Biuder不要犯傻
    4. Course course = new CourseBuilder()
    5. .addName("设计模式")
    6. .addPPT("【PPT课件】")
    7. .addVideo("【回放视频】")
    8. .addNote("【课堂笔记】")
    9. .addHomework("【课后作业】")
    10. .build();
    11. System.out.println(course);
    12. }
    13. }
    1. public class CourseBuilder {
    2. private Course course = new Course();
    3. public CourseBuilder addName(String name) {
    4. course.setName(name);
    5. return this;
    6. }
    7. public CourseBuilder addPPT(String ppt) {
    8. course.setPpt(ppt);
    9. return this;
    10. }
    11. public CourseBuilder addVideo(String video) {
    12. course.setVideo(video);
    13. return this;
    14. }
    15. public CourseBuilder addNote(String note) {
    16. course.setNote(note);
    17. return this;
    18. }
    19. public CourseBuilder addHomework(String homework) {
    20. course.setHomework(homework);
    21. return this;
    22. }
    23. public Course build() {
    24. return this.course;
    25. }
    26. }
    1. @Data
    2. @NoArgsConstructor
    3. @AllArgsConstructor
    4. public class Course {
    5. private String name;
    6. private String ppt;
    7. private String video;
    8. private String note;
    9. private String homework;
    10. @Override
    11. public String toString() {
    12. return "CourseBuilder{" +
    13. "name='" + name + '\'' +
    14. ", ppt='" + ppt + '\'' +
    15. ", video='" + video + '\'' +
    16. ", note='" + note + '\'' +
    17. ", homework='" + homework + '\'' +
    18. '}';
    19. }
    20. }

    构建者组成部分

    备注:@biuder注解 = 构建者模式(请合理利用注解)

  • 相关阅读:
    node-sass为什么一直安装不上、安装失败?
    Exchangis1.0演讲稿
    C++静态联编和动态联编学习笔记
    axios在vue里简单的封装使用
    Vue学习---插件和混入
    【Vivado使用】从0开始 综合后生成门级网表
    vue3 兄弟组件传参mitt 插件
    IO流 之 转换流( InputStreamReader 字节输入转换流 和 OutputStreamWriter 字节输出转换流)
    iOS 17隐私设置指南
    【chatglm3】(4):如何设计一个知识库问答系统,参考智谱AI的知识库系统,
  • 原文地址:https://blog.csdn.net/weixin_50914566/article/details/132888933
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号