我定义了个,Person类,
package person;public class Person {
protected String name;
protected String ID;
protected int age;

public Person() {
name = "tangqiang";
age = 18;
ID = "511023198807026917";只有部分。
编译后的.class文件放person文件下
现有定义一个类
package person.students;import person.*;public class Student extends Person {
protected String number;
protected String school;

public Student() {
super();
number = "2008001505";
school = "taiyuanligongdaxue";
}

public Student(String nameOrID,String numberOrSchool) {
super(nameOrID);
if(numberOrSchool.length() == 10) {
number = numberOrSchool;
school = "taiyuanligongdaxue";
}
else {
school = numberOrSchool;
number = "2008001505";
}
}只有部分代码。
把Student.java文件放在person文件所在的文件夹中
让后我编译Student.java出现如下问题:我觉得是包和引用有问题就是不知怎么改?Student.java:5: 找不到符号
符号: 类 Person
public class Student extends Person {
                             ^
Student.java:60: 找不到符号
符号: 变量 super
位置: 类 person.students.Student
        System.out.println("Student: name:" + super.name + "  ID:" + ID + "  age
:" + age + "  number:" + number + "  school:" + school);
                                              ^
Student.java:60: 找不到符号
符号: 变量 ID
位置: 类 person.students.Student
        System.out.println("Student: name:" + super.name + "  ID:" + ID + "  age
:" + age + "  number:" + number + "  school:" + school);
                                                                     ^
Student.java:60: 找不到符号
符号: 变量 age
位置: 类 person.students.Student
        System.out.println("Student: name:" + super.name + "  ID:" + ID + "  age
:" + age + "  number:" + number + "  school:" + school);

解决方案 »

  1.   

    你的 student 不是应该在 person.students 包下么。
    你自己都这么写的:package person.students;
      

  2.   

    package person.students;
    你这是新建了另一个包了。。student.java文件应该放在这里面啊 你怎么放在person包里了
      

  3.   

    把student.java文件放进 person.students 包里  然后 javac person.students.student.java啊 
      

  4.   

    我的意思是把Student.java和person文件放在了同一个文件javasourse下,然后编译Student.java文件就出问题了