当前位置: 首页 > 知识库问答 >
问题:

创建简单的学生课堂

翁阳曜
2023-03-14

我正在使用java创建一个类,这是一个理解对象、方法等的基本类...无论如何,类名是学生,它应该为每个新创建的对象分配一个学生ID。学生ID从1000000开始,递增1,所以每个新对象都应该为类分配一个学生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。请帮忙

共有3个答案

管炳
2023-03-14

使用这个:this.studentID=nextID;代替学生ID=nextID;

寿高阳
2023-03-14

您的getStudentID方法返回了错误的值。它应该返回studentID字段,而不是静态nextID字段。

就像这样:

public long getStudentID(){
    return this.studentID;
}
甘明朗
2023-03-14

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

public long getStudentID() {
    return nextID;
}

应该是:

public long getStudentID() {
    return studentID;
}

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

studentID=nextID;

您正在给参数赋值,然后在方法结束时将其丢弃。您应该删除该参数,因为您在类中跟踪ID,所以不需要传入它。您也可以将其更改为this.studentIDthis显式引用实例字段。

 类似资料:
  • 我开始学习java,我试着做一个简单的系统来联系学生和学科,我的问题是如何让一个学生联系到许多学科,我希望你能帮助我。 主类 学生班 科目班 这段代码的输出是这样的: 诺姆:道格拉斯 库索:TLM Matrícula: 102050 学科:东方计划 我需要的是给学生列出许多科目,我知道这可能很简单,但我现在开始学习这个,所有这些对我来说都是新的;D

  • 日期:2020/12/17 创盛视联数码科技(北京)有限公司 1. 创建课堂 点击创建课堂,填写课堂相关信息、选择房间类型,保存即可,如下图所示: 1.1. 基本信息 课堂名称 需100个字符以内(1个汉字、数字、标点都算1个字符)。 课堂布局模式 决定课堂页面的默认布局。主要分为文档模式与大屏模式。 课堂连麦模式 学生进入房间后自动连麦。 合流布局模式 设置旁听者以及回放观看时的视频合屏布局,有

  • 问题内容: 在Java中创建单例类的最佳/正确方法是什么? 我发现的实现之一是使用私有构造函数和getInstance()方法。 但是在以下测试案例中实现失败吗? 如何解决呢? 谢谢 问题答案: 根据对您的问题的评论: 我有一个包含一些键值对的属性文件,这是整个应用程序所需要的,这就是为什么我在考虑单例类。 此类将从文件中加载属性并将其保留,您可以在应用程序中的任何位置使用它 不要使用单例。您显然

  • 在中国大学 MOOC 平台已开设线上课程(MOOC、SPOC、在线开放课程)的课程团队老师,可基于自己的线上课程创建并使用关联慕课堂(助教无法使用慕课堂),通过电脑端【课程管理后台】,进入自己当前学期的mooc或spoc课程: 点击课程左侧导航的【慕课堂管理】进入慕课堂管理界面: 点击【+创建课堂】,输入课堂名称、上课时间等,点击【保存】,课堂创建成功,并且系统会分配六位字符的课堂码,学生可以在A