当我从'student class内部调用它时,为什么会给我一个错误?
Why is it giving me an error when i'm calling it from inside the 'student class?
*我必须创建一个名为 student
的 class
但是我遇到了一个错误,我不知道如何完成代码,但是
我所做的是:
public class Student {
String name;
private int age;
private int grade;
private int average;
private String disability;
public void StuInfo(){
name = "John";
age = 15;
grade = 71;
average = 63;
disability = "No";
System.out.println("Name: "+name+",Age: "+age+",Grade: "+grade+",Average: "+average );
}
public static void main(String[] args){
StuInfo();
}
}
请帮忙。
您正在从静态方法调用非静态方法。通过 -> new StuInfo();
创建 StuInfo 对象
为了成功编译您的程序,您需要首先创建 class Student 的新对象或将 stunInfo() 方法设为静态。
此外,方法名称的 java 约定是稍后以小写字母开头,因此 StunInfo 最好命名为 'stunInfo'。可以考虑像'printStudentInfo()'这样的名字,这样会更易读,更好地展示方法的作用。(提高可读性)
这些注释可以使您的示例正常工作,但它不是发布的家庭作业的完整解决方案。您可能需要将 stunInfo() 方法的访问修饰符更改为只能从 class 等
中访问
public class Student {
String name;
private int age;
private int grade;
private int average;
private String disability;
public void Student(){
name = "John";
age = 15;
grade = 71;
average = 63;
disability = "No";
} // end constructor
public void stunInfo(){
System.out.println("Name: "+name+",Age: "+age+",Grade: "+grade+",Average: "+average );
} //end stunInfo
public static void main(String[] args){
//Create a new student
Student student=new Student();
//Invoke stunInfo method
student.stunInfo();
} //end main
} //end class
*我必须创建一个名为 student
的 class但是我遇到了一个错误,我不知道如何完成代码,但是 我所做的是:
public class Student {
String name;
private int age;
private int grade;
private int average;
private String disability;
public void StuInfo(){
name = "John";
age = 15;
grade = 71;
average = 63;
disability = "No";
System.out.println("Name: "+name+",Age: "+age+",Grade: "+grade+",Average: "+average );
}
public static void main(String[] args){
StuInfo();
}
}
请帮忙。
您正在从静态方法调用非静态方法。通过 -> new StuInfo();
创建 StuInfo 对象为了成功编译您的程序,您需要首先创建 class Student 的新对象或将 stunInfo() 方法设为静态。 此外,方法名称的 java 约定是稍后以小写字母开头,因此 StunInfo 最好命名为 'stunInfo'。可以考虑像'printStudentInfo()'这样的名字,这样会更易读,更好地展示方法的作用。(提高可读性) 这些注释可以使您的示例正常工作,但它不是发布的家庭作业的完整解决方案。您可能需要将 stunInfo() 方法的访问修饰符更改为只能从 class 等
中访问public class Student {
String name;
private int age;
private int grade;
private int average;
private String disability;
public void Student(){
name = "John";
age = 15;
grade = 71;
average = 63;
disability = "No";
} // end constructor
public void stunInfo(){
System.out.println("Name: "+name+",Age: "+age+",Grade: "+grade+",Average: "+average );
} //end stunInfo
public static void main(String[] args){
//Create a new student
Student student=new Student();
//Invoke stunInfo method
student.stunInfo();
} //end main
} //end class