给定学生的姓名以及他们所在的年级,为学校创建一个名册。
最终,你应该能够:
注意,我们这里的学生都只有一个名字(小镇嘛,你还想怎样?),而且每个学生都不能被重复添加到一个年级或名册中。 事实上,当测试尝试重复添加同一个学生时,你的实现应该表明这是错误的。
并不是非要把学生建模成一个独立的对象,需求本身相当简单,你完全可以用一个方便的内部数据结构来表示(只要它不会泄漏到结果里)。
这个练习对问题规范做了小幅修改,因为把添加学生和查询学生分开放在不同的方法里更合理(而不是用一个方法同时完成这两件事,那样不太像 Pharo/Smalltalk 的风格)。