【发布时间】:2021-02-10 08:49:02
【问题描述】:
我现在正在执行此代码,它总是在“教师 x1 = new Teacher(); and Student y1 = new Student( )”。我对我应该怎么做才能使程序正常工作感到困惑。感谢您的帮助!
编辑:添加了其他类 编辑 2:此代码的目标是有一个班级 Person(有姓名、年龄和性别)、另一个班级 Student(有成绩)和教师(有薪水)。 Student 和 Teacher 类必须继承自 Person 类。
我的代码:
import java.util.*;
import java.util.Scanner;
public class Java2Technical {
public static void main(String[] args) {
System.out.println("DATABASE");
System.out.println(" ");
System.out.println("1. Teacher");
System.out.println("2. Student");
System.out.print("Choice: ");
Scanner scan = new Scanner(System.in);
int choice = scan.nextInt();
System.out.println(" ");
if(choice == 1) {
Teacher x1 = new Teacher();
System.out.print("Name: ");
Scanner scan1 = new Scanner(System.in);
x1.name = scan1.nextLine();
System.out.println(" ");
System.out.print("Age: ");
Scanner scan2 = new Scanner(System.in);
x1.age = scan2.nextInt();
System.out.println(" ");
System.out.print("Gender: ");
Scanner scan3 = new Scanner(System.in);
x1.gen = scan3.next().charAt(0);
System.out.println(" ");
System.out.print("Salary: " + x1.salary);
System.out.println(" ");
}
else if(choice == 2){
Student y1 = new Student();
System.out.print("Name: ");
Scanner scan1 = new Scanner(System.in);
y1.name = scan1.nextLine();
System.out.println(" ");
System.out.print("Age: ");
Scanner scan2 = new Scanner(System.in);
y1.age = scan2.nextInt();
System.out.println(" ");
System.out.print("Gender: ");
Scanner scan3 = new Scanner(System.in);
y1.gen = scan3.next().charAt(0);
System.out.println(" ");
System.out.print("Grade: " + y1.grade);
System.out.println(" ");
}
else{
System.out.println("Invalid Input");
}
}
public class Person {
String name;
int age;
char gen;
double grade;
double salary;
}
public class Student extends Person {
public void setName(String Brand) {
this.name = name;
}
public void setAge(int age) {
this.age = age;
}
public void setGen(char gend) {
this.gen = gen;
}
public void setGrade(double grade){
this.grade = grade;
}
public String getName(String name) {
return this.name;
}
public int getAge(int age) {
return this.age;
}
public char getGen(char gend) {
return this.gen;
}
public double getGrade(double grade) {
return this.grade;
}
}
public class Teacher extends Person {
public void setName(String Brand) {
this.name = name;
}
public void setAge(int age) {
this.age = age;
}
public void setGen(char gen) {
this.gen = gen;
}
public void setSalary(double salary) {
this.salary = salary;
}
public String getName(String name) {
return this.name;
}
public int getAge(int age) {
return this.age;
}
public char getGen(char gen) {
return this.gen;
}
public double getSalary(double salary) {
return this.salary;
}
}
}
【问题讨论】:
-
什么是
Teacher和Student类?它们是内部类吗? -
@Ria 你能把教师和学生的课程也发一下吗?
-
请将您的代码设为minimal reproducible example。另外,出于对所有美好事物的热爱,请格式化您的代码并使用某种形式的合理缩进。您的代码非常难以阅读且令人讨厌。
标签: java