返回
Java academic benchmark: Exam-based evaluation of LLMs on object-oriented programming
DOI:10.1016/j.jss.2026.113033.png)
摘要
En 中文
当前代码生成基准在很大程度上忽视了面向对象编程(OOP)技能,留下了大型语言模型(LLMs)能否有效将OOP原则应用于结构化编程任务的问题。大多数基准中Python的主导地位和宽松性进一步掩盖了模型在核心OOP原则上的弱点。我们引入了Java学术基准(JAB),基于在一家主要大学十年来收集的103个真实Java考试,以及506个专家编写的JUnit测试,以严格评估高级Java编程能力,并重点强调OOP。为了补充基于执行的评分,我们提出了KODE,一个LLM作为评估者的框架,从四个教学维度评估OOP的遵循情况。我们在两种解析策略下评估了27个LLM:单次尝试(一次性)和代理式(通过编译器和测试反馈进行迭代改进)。结果表明,在我们的评估协议下,较大的闭源模型与或超过本科水平的OOP学生——特别是在代理式解析下——而较小的开源模型则落后。JAB的类级设计支持细粒度错误分析,揭示了反复出现的错误概念。编辑注:开放科学材料已由系统与软件杂志开放科学委员会验证。
Keyword:
Large language models
Java
Object-oriented programming
Coding benchmark

