当前位置: 首页 > news >正文

Java学习通互评5

1.StudenDaoListImpl.java与StudentDaoArrayImpl.java有何不同?

前者用ArrayList,后者用普通数组;前者无需指定初始容量,后者需在创建对象时传入数组大小;前者支持动态扩容,后者容量固定,数组满后无法继续添加;前者直接调用add方法即可添加,后者需遍历数组找到null才能添加

2.StudentDao.java文件是干什么用的?为什么里面什么实现代码都没有?

作用:作为DAO 接口,定义学生数据操作的标准协议,统一所有实现类的方法名称、参数及返回值,让上层代码无需关注底层存储细节,只需面向接口编程
无实现代码的原因:接口的本质是方法规范,仅定义要做什么,不定义怎么做

3.使用搜索引擎搜索“Java DAO”,选出几句你能看懂的、对你最有启发的话。请结合接口知识去理解。

(1)“DAO 模式将数据访问逻辑与业务逻辑分离,通过接口隔离底层数据存储的变化”
理解:接口(如 StudentDao)是 “中间层”,业务逻辑(Test 类)只调用接口方法,若底层存储从数组换成列表(或数据库、文件),只需更换实现类,无需修改业务代码,符合 “开闭原则”(对扩展开放,对修改关闭)
(2):“DAO 接口定义数据操作的统一方法,实现类负责与具体存储介质交互,上层代码面向接口而非具体实现”

4.尝试运行Test.java。根据注释修改相应代码。结合参考代码回答使用DAO模式有什么好处?

理解:接口强制所有实现类遵循相同方法规范,避免因实现类方法不一致导致上层代码混乱;同时上层代码(如Test类)中StudentDao sdm的定义,体现 “多态” 特性,同一接口引用可指向不同实现类对象
灵活性:切换底层存储方式(数组→列表)时,只需修改StudentDao的初始化代码(如new StudentDaoArrayImpl(50)→new StudenDaoListImpl()),其余代码不变
规范性:接口强制实现类统一方法,避免不同存储方式的实现类方法混乱(如添加学生统一叫addStudent,而非有的叫add、有的叫insert)

可维护性:若需修改数据访问逻辑(如查询学生时忽略大小写),只需修改对应实现类的getStuByName方法,无需改动所有关联代码

http://www.hskmm.com/?act=detail&tid=33858

相关文章:

  • 卡车厂实习第三天
  • 第六周作业---定时器
  • 『普及』浅谈图的基础
  • 被C语言链表折磨的一天 Σ( △ |||)︴
  • 运筹学在供应链优化中的实际应用
  • P6715 [CCO 2018] Fun Palace 题解
  • WebGL学习及项目实战(第03期:绘制多个点,线,面)
  • CF 359D. Pair of Numbers
  • 2025多校CSP模拟赛6
  • Java基础——类型转换,变量、常亮、作用域,基本运算符
  • 洛谷 LGR-246 S 模拟赛
  • godot3D节点本身的偏转数值错误竟会导致空间移动穿模??!
  • 题解:qoj7938 Graph Race
  • java中的初等函数
  • 分治算法
  • 专用硬件神经网络优化技术解析
  • 学习逆向的背景知识(自用)
  • Linux-网络安全私房菜(二)
  • pycharm使用远程的ssh的解释器
  • Android SSL Pinning检测利器:SSLPinDetect技术解析
  • AI元人文:社区调解的数字剧场
  • 2025年粉末冶金制品/零件厂家推荐排行榜,专业制造与高品质服务的首选!
  • Dubbo入门-Dubbo的快速使用
  • 站位2
  • 傅里叶变换及DCT点滴
  • 【未完待续】MkDocs 部署安装教程
  • 傅里叶变换点滴
  • [PaperReading] SAIL-Embedding Technical Report: Omni-modal Embedding Foundation Model
  • 人生四大支柱 - 健康,金钱,工作,关系
  • 英伟达个人AI超算Spark技术解析