这段代码中的错误是什么,为什么?
class Person {
String name = “No name";
public Person(String nm) { name = nm; }
}
class Employee extends Person {
String emplD = “0000”;
public Employee(String id) { empID = id; }
}
public class EmployeeTest {
public static void main(String[ ] args)
{
Employee e = new Employee(”4321”);
System.out.println(e.empID);
}
}
变化“No name’
到“No name"
(收盘报价)
也许是在这里:
String name = “No name’;
它应该是:
String name = "No name";
而且,我不知道如果这是你从d粘贴的编辑器卷板机这一点,但是这是错误太:
Employee e = new Employee(”4321”);
应该是:
Employee e = new Employee("4321");
你EMPID场不公钥/有没有为它存取方法/它没有被定义为属性。如果除了源代码和模糊的帖子标题之外,绝对不提供有关错误的信息,也不要期望人们提供帮助。
改变这一行
String name = “No name’;
到:
String name = “No name";
检查结束qoutes。
员工的构造函数必须调用其超强的构造,人的构造函数。
public class Person
{
private String name;
public Person(String nm)
{
this.name = nm;
}
public String getName()
{
return this.name;
}
}
public class Employee extends Person
{
private String emplD;
public Employee(String nm, String id)
{
super(nm);
this.empID = id;
}
public String getId()
{
return this.empID;
}
}
public class EmployeeTest
{
public static void main(String[] args)
{
Employee e = new Employee("Some Name", "4321");
System.out.println(e.getID());
}
}
一些事情:
您使用了错误的那种在你的字符串引号字符。您需要使用
"
。不“
,'
,或者”
。你
Person
类没有默认构造函数。正因为如此,你必须显式调用super("some name");
为您Employee
构造函数的第一行(我建议增加一个构造函数既name
和employeeId
作为参数)。您申报的财产为
emplD
(用小写字符L
),但你试图给它empID
(以大写字符I
)。你可以任意调用它,但名字需要在两个地方匹配。你对象的设计违反了封装的基本原则。
name
和empID
属性应该是私有字段,如果外部类需要访问这些值,则应提供适当的公共getter方法。换句话说,而不是e.empID
你应该能够说e.getEmpID()
。在单个文件中定义多个类通常不是很好的编码风格,特别是当所有类都可公开访问时。
你要调用的类`Employeesuper(ID)的构造函数的超类(Person
)的构造;请在下面找到正确的代码。
public Employee(String id) {super(id);empID =id;
调用超类构造函数将解决问题!
public class Person {
String name = "No name";
public Person(String nm) { name = nm; }
}
public class Employee extends Person {
String empID = "0000";
public Employee(String id) {
super("Some Name");
empID = id; }
}
public class EmployeeTest {
public static void main(String[] args){
Employee e = new Employee("4321");
System.out.println(e.empID);
}
}
为什么你认为有错误?请问一个*适当的*问题。 – 2011-05-06 09:32:20
是什么问题? – Ikke 2011-05-06 09:32:34
我能看到的一个问题是可怕的缩进。 – Ingo 2011-05-06 09:33:56