{ 标题应该简明清晰 }
原题:问一个继承问题 大哥们来帮我看看
代码如下 { 请用 code tag,选禁用笑脸 Disable Smileys }
import java.text.*;
public class PersonTest
{
public static void main(String[] args)
{
Person[] people = new Person[2];
people[0]=new Employee("Harry Hacker",50000);
people[1]= new Student("Maria Morris","computer science");
for(int i=0;i<people.length;i++)
{
Person p=people[i];
System.out.println(p.getName() +","+p.getDesctiption());
}
}
}
abstract class Person
{
private String name;
public Person(String n)
{
name=n;
}
public abstract String getDesctiption();
public String getName()
{
return name;
}
}
class Employee extends Person
{
private double salary;
public Employee(String n,double s)
{
super(n);
salary=s;
}
public double getSalary()
{
return salary;
}
public String getDescription()
{
NumberFormat formatter= NumberFormat.getCurrencyInstance();
return "an employee with a salary of "+ formatter.format(salary);
}
public void raiseSalary(double byPercent)
{
double raise = salary * byPercent / 100;
salary +=raise;
}
}
class Student extends Person
{
public Student(String n,String m)
{
super(n);
major=m;
}
public String getDescription()
{
return "a student majoring in" + major;
}
private String major;
}
错误如下:
---------- javac ----------
PersonTest.java:36: Employee is not abstract and does not override abstract method getDesctiption() in Person
class Employee extends Person
^
PersonTest.java:60: Student is not abstract and does not override abstract method getDesctiption() in Person
class Student extends Person
^
2 errors
输出完成 (耗时 8 秒) - 正常终止
怎么解决啊