1. 检查的时候 程序最后面UndergradStudent s1=new UndergradStudent("John","1213","21 Bristol Rd","Electrical Eng");
这一行不能通过 不知道为什么
2. 老师说在一个文件里面只能有一个public class,在例子中 他在每个类中都加了public 我删掉后就能编译通过 请问一下如果像课件里那样要是在每个类前面都加了public 是不是应该分开保存?这样的话他们之间互相还有联系吗?3. 谢谢
public class Student
{
public Student(String n, int id, String a)
{
name=new String(n);
idNumber=id;
address=new String(a);
} public void printInfo()
{
System.out.println(name +" "+idNumber+" "+address);
} private String name;
private int idNumber;
private String address;
}class UndergradStudent extends Student
{
public UndergradStudent(String n, int id, String a, String d)
{
super(n,id,a);
degreeProgramme=new String(d);
} public void printInfo()
{
super.printInfo();
System.out.println(degreeProgramme);
} private String degreeProgramme;
}class StudentTest
{
public static void main(String[] args)
{
UndergradStudent s1=new UndergradStudent("John","1213","21 Bristol Rd","Electrical Eng"); s1.printInfo();
}
}
没看明白.... 那个1213是id number啊
public UndergradStudent(String n, int id, String a, String d)//id需要int型,你传了字符串
{
super(n,id,a);
degreeProgramme=new String(d);
}
2.public 的访问权限最高啊,在同一个包中他们之间是可以访问的啊。
UndergradStudent s1=new UndergradStudent("John",1213,"21 Bristol Rd","Electrical Eng");
s1.printInfo();2、对的,一个类中不能有多个public class,如果有就应该分开保存假如有两个类都在一个包中,另外加上一个测试类,如下写法:
package com.stundent;
public class Student
{
public Student(String n, int id, String a)
{
name=new String(n);
idNumber=id;
address=new String(a);
} public void printInfo()
{
System.out.println(name +" "+idNumber+" "+address);
} private String name;
private int idNumber;
private String address;
}package com.student;
public class UndergradStudent extends Student
{
public UndergradStudent(String n, int id, String a, String d)
{
super(n,id,a);
degreeProgramme=new String(d);
} public void printInfo()
{
super.printInfo();
System.out.println(degreeProgramme);
} private String degreeProgramme;
}package com.test;
import com.student.UndergradStudent;
public class StudentTest
{
public static void main(String[] args)
{
UndergradStudent s1=new UndergradStudent("John","1213","21 Bristol Rd","Electrical Eng"); s1.printInfo();
}
}