【发布时间】:2014-02-13 04:45:05
【问题描述】:
我有一个问题。我正在努力做到这一点,但经过几个小时的搜索和尝试,我似乎无法让它发挥作用。这是一个任务。我只是需要指导。
我必须创建以下对象
Student(String name, double GPA)
Classroom (int maxClassSize)
教室对象初始化一个数组,我将在其中存储学生对象。
但是,Classroom() 中的数组被声明为私有(私有 Student students[]),所以我使用公共方法添加学生
public boolean add(Student aStudent) *do not worry about the boolean type
我也可以使用 get 方法返回数组的值
public Student getStudent(int position)
这些方法在作业中设置。
我的问题是,当我尝试输出数组中的对象时(同样,这是分配所必需的)。我得到了参考,即 Student@23e45e23 而不是每个对象的名称和 GPA。
我不能使用 toString。
有什么想法吗?
【问题讨论】:
-
你必须为Student实现一个toString方法,否则,它会给你一个默认的(内存地址)。
-
如果您可以访问学生的属性,您可以执行 println getStudent(0).getName() + getStudent.getGPA();
-
我问了老师,我不能使用toString,并且作业确实明确说“证明输出必须来自教室对象返回给您的main方法的对象。” (他的话)。