代码如下:
public class Course {
private String name;
private String[] students = new String[100];
private int numberOfStudents;

public Course (String name) {
this.name = name;
}

public String getName() {
return name;
}

public void addStudents(String student) {
students[numberOfStudents] = student;
numberOfStudents++;
}

public String[] getStundets() {
return students;
} public int getNumberOfStudents() {
return numberOfStudents;
}
}
--------------------------------------------------
这里的numberOfStudents不需要赋初值么?PS:该类运行无错,来自《JAVA语言程序设计 基础篇》程序清单7-11

解决方案 »

  1.   

    private int numberOfStudents;成员变量,没有指定缺省值的情况下,int型,系统会默认为0。
      

  2.   

    我1楼的回复咋没了?private int numberOfStudents;
    成员变量,没有指定缺省值的情况下,int型系统会默认为0。你的问题可能是把局部变量跟成员变量混淆了。局部变量没有赋值之前,使用会报错,比如:
    public void fun() {
      int a;
      System.out.println(a); // 报错
    }
      

  3.   

    可以不需要,因为numberOfStudents作为属性,有默认值。它的默认值为0