gpt4 book ai didi

java - 创建简单的学生类

转载 作者:行者123 更新时间:2023-11-29 07:54:12 25 4
gpt4 key购买 nike

我正在使用 java 创建一个类,它是一个理解对象、方法等的基本类。无论如何,类名是 Student,它应该为每个新创建的对象分配一个学生 ID。学生 ID 从 1000000 开始并递增 1,因此每个新对象都应该让类(class)分配一个学生 ID,10000001、100000002 等。

public class Student {

private static long nextID=10000000;
private long studentID;
//etc..

public Student (String name, long studentID, int count, double total score) {
totalScore=0;
count=0;
this.name=name;
studentID=nextID;
nextID++;

}

public long getStudentID() {
return nextID;`
}

但是,当我创建此类的对象时,学生 ID 始终为每个人提供相同的学生编号,10000000。请帮忙

最佳答案

您的 getStudentID 函数正在返回静态计数器而不是实例变量。

public long getStudentID() {
return nextID;
}

应该是:

public long getStudentID() {
return studentID;
}

此外,在构造函数中,您定义了一个名为studentID 的参数,它隐藏了同名的实例字段,因此当您这样做时:

studentID=nextID;

您正在为参数分配一个值,然后在方法结束时丢弃该值。您应该删除该参数,因为您在类(class)内部跟踪 ID,因此不需要将其传入。您也可以将其更改为 this.studentID:this 明确引用实例字段。

关于java - 创建简单的学生类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18972485/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com