代码如下:
public class AbstractDemo {
Employee e1, e2;
public AbstractDemo() {
//初始化雇员对象e1,并显示雇员信息
e1 = new Employee("wang xiao yue", 3000.00, "2005/05/20", 24);
System.out.println("name:" + e1.getName());
e1.getInfo();
System.out.println("salary:" + e1.getSalary());
System.out.println("hireDay:" + e1.getHireDay() + "\n"); //初始化雇员对象e2,并显示雇员信息
e2 = new Employee("tong guang", 5000.00, "2005/05/20", 26);
System.out.println("name:" + e2.getName());
e2.getInfo();
System.out.println("salary:" + e2.getSalary());
System.out.println("hireDay:" + e2.getHireDay()); } public static void main(String[] args) {
new AbstractDemo();
}
}
//自定义抽象类
abstract class People {
String name;
int gae; //声明抽象方法
abstract String getName(); abstract int getAge();
}
class Employee extends People {
private double salary;
private String hireDay;
private int age; //含有参数的构造方法
public Employee(String name, double salary, String hireDay, int age) {
this.name = name;
this.salary = salary;
this.hireDay = hireDay; } //用于获取雇员信息的方法
public void getInfo() {
System.out.println("我是员工");
} public double getSalary() {
return salary;
} public String getHireDay() {
return hireDay;
} //实现父类中的抽象方法
public String getName() {
return name;
} public int getAge() {
return age;
}
}我做的结果显示
name:wang xiao yue
我是员工
salary:3000.0
hireDay:2005/05/20name:tong guang
我是员工
salary:5000.0
hireDay:2005/05/20正确结果应该是
name:wang xiao yue
我是员工
age0
salary:3000.0
hireDay:2005/05/20name:tong guang
我是员工
ag0
salary:5000.0
hireDay:2005/05/20弄得有点奇怪了
我如果在 public AbstractDemo()中输入System.out.println("age:"+e1.getAge());
System.out.println("age:"+e2.getAge());
就能得出正确答案可是我的练习书上的代码里没有有输入System.out.println("age:"+e1.getAge());
System.out.println("age:"+e2.getAge());这两段代码
就显示出了这确答案 希望给为帮我解答一下.
public class AbstractDemo {
Employee e1, e2;
public AbstractDemo() {
//初始化雇员对象e1,并显示雇员信息
e1 = new Employee("wang xiao yue", 3000.00, "2005/05/20", 24);
System.out.println("name:" + e1.getName());
e1.getInfo();
System.out.println("salary:" + e1.getSalary());
System.out.println("hireDay:" + e1.getHireDay() + "\n"); //初始化雇员对象e2,并显示雇员信息
e2 = new Employee("tong guang", 5000.00, "2005/05/20", 26);
System.out.println("name:" + e2.getName());
e2.getInfo();
System.out.println("salary:" + e2.getSalary());
System.out.println("hireDay:" + e2.getHireDay()); } public static void main(String[] args) {
new AbstractDemo();
}
}
//自定义抽象类
abstract class People {
String name;
int gae; //声明抽象方法
abstract String getName(); abstract int getAge();
}
class Employee extends People {
private double salary;
private String hireDay;
private int age; //含有参数的构造方法
public Employee(String name, double salary, String hireDay, int age) {
this.name = name;
this.salary = salary;
this.hireDay = hireDay; } //用于获取雇员信息的方法
public void getInfo() {
System.out.println("我是员工");
} public double getSalary() {
return salary;
} public String getHireDay() {
return hireDay;
} //实现父类中的抽象方法
public String getName() {
return name;
} public int getAge() {
return age;
}
}我做的结果显示
name:wang xiao yue
我是员工
salary:3000.0
hireDay:2005/05/20name:tong guang
我是员工
salary:5000.0
hireDay:2005/05/20正确结果应该是
name:wang xiao yue
我是员工
age0
salary:3000.0
hireDay:2005/05/20name:tong guang
我是员工
ag0
salary:5000.0
hireDay:2005/05/20弄得有点奇怪了
我如果在 public AbstractDemo()中输入System.out.println("age:"+e1.getAge());
System.out.println("age:"+e2.getAge());
就能得出正确答案可是我的练习书上的代码里没有有输入System.out.println("age:"+e1.getAge());
System.out.println("age:"+e2.getAge());这两段代码
就显示出了这确答案 希望给为帮我解答一下.
书上应该是错了