无法在另一个 class 中设置值

can't set a value in another class

这是一个class的方法,courses是另一个class的一个数组,我在main中设置了cn的值,但是它跳过了它后面的所有代码。这是为什么?

public class GradeBook {
    Scanner r=new Scanner(System.in);
    private int cn;
    private Course courses[]=new Course[cn];
    void entercourse(){
         for(int i = 0;i<courses.length;i++){
             System.out.println("c name");
             courses[i].setName(r.nextLine());
             System.out.println("mark");
             courses[i].setMark(r.nextInt());
             courses[i].setpass();
         }
    }

因为int cn变量默认为0。你需要在那里输入一些 +ve 值才能工作

在方法外声明数组时,需要指定数组大小值。在您的程序中,您使用了整数 cn。但是,您没有指定 "cn" 实际代表什么,因此默认情况下它变为 0。这就是为什么您的数组为空并且您的程序似乎跳过了代码。