错误:无法从静态上下文引用非静态变量平均值

时间:2019-02-19 07:33:03

标签: java constructor

编写一个程序,为学生输入三个科目的分数并计算平均分数。 在你的课上。 a)包含一个构造函数以将三个标记初始化为0 b)包括一种计算和存储平均值的方法 c)包括一种显示学生证,学生姓名和平均分数的方法

import java.util.Scanner;
public class Main{
    int mark1;
    int mark2;
    int mark3;
    float total;
    float average;
public Main(){
    int mark1=50;
    int mark2=60;
    int mark3=70;
    float total=0;
    float average=0;
}
  public static void main(String args[]){
    Main myb = new Main();
     Scanner my = new Scanner(System.in);
     System.out.println("Enter marks for First subject");
     int marks1 = my.nextInt();
     System.out.println("Enter marks for Second subject");
     int marks2 = my.nextInt();
     System.out.println("Enter marks for Third subject");
     int marks3 = my.nextInt();
     total = marks1+marks2+marks3;
     average = total/3;
     System.out.println("Total is "+myb.total);
     System.out.println("Total is "+myb.average);
    /*Student stud1=new Student("IT9087567","Kamal",50,60,70);
    stud1.showDetail();*/
  }


}

1 个答案:

答案 0 :(得分:1)

这两行:

total = marks1+marks2+marks3;
average = myb.total/3;

应为:

myb.total = marks1+marks2+marks3;
myb.average = myb.total/3;

我认为您的代码可能还有其他问题,但这将解决您在帖子主题中提到的错误(以及下一个类似的错误)。