gpt4 book ai didi

java - 如何将用户输入传递给java中的构造函数

转载 作者:行者123 更新时间:2023-12-02 08:43:51 24 4
gpt4 key购买 nike

所以我只是在做实际作业之前先测试一些东西。我的目标是让用户输入他/她的姓名、类(class)和学号,对吗?

现在该 Activity 据说有一个“学生”对象。

现在,我想将这些用户输入传递给构造函数并显示它。

不幸的是,出现了一个错误“非静态变量无法被引用”(这是我第一次遇到这个错误)

另外,我的观点是基于这篇文章: Can I pass user input to my constructor

如有任何帮助,我们将不胜感激!

import java.lang.*;
import java.util.Scanner;

public class Student {

int student_num;
String name, course;

public Student (String n, String c, int sn) {
name = n;
student_num = sn;
course = c;
}




public static void main (String[]args) {

Student pupil = new Student(name, course, student_num);

Scanner input = new Scanner(System.in);
System.out.println("Enter Name:");
String name = input.nextLine();

System.out.println("Enter Course:");
String course = input.nextLine();

System.out.println("Enter Student Number:");
int student_num = input.nextInt();


System.out.println();
System.out.println("Name:" +name);
System.out.println("Course:" +course);
System.out.println("Student Number:" +student_num);



System.exit(0);

}

}

最佳答案

这行有问题Student Student = new Student(name, course, Student_num);
您在此处从静态上下文引用实例变量...所以它不起作用。实际上,当您获得用户的所有输入并根据这些输入创建新学生时,这一行必须是最后一行。

关于java - 如何将用户输入传递给java中的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61212097/

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