package com.neusoft.www.po;
public class Employee {
private String eId;//工号
private String eName;//姓名
public String geteId() {
return eId;
}
public void seteId(String eId) {
this.eId = eId;
}
public String geteName() {
return eName;
}
public void seteName(String eName) {
this.eName = eName;
}
/*无参构造方法*/
public Employee() {
//super();
}
/*有参构造方法*/
public Employee(String eId, String eName) {
//super();
this.eId = eId;
this.eName = eName;
}
/*父类公共方法*/
public void work()
{
System.out.println("正在工作...");
}
/**
* @function 多态的使用
* @param e 父类对象
*/
public void sleep(Employee e)
{
System.out.println( e.geteName() + "正在睡觉...");
}
}
package com.neusoft.www.po;
/**
*
*
* @date 2014.03.04
* @function 类的继承与多态
*
*
*/
public class Financial extends Employee {
/*重写work()方法*/
public void work() {
System.out.println("财务部人员在工作...");
}
}
package com.neusoft.www.po;
/**
*
*
* @date 2014.03.04
* @function 类的继承与多态
*
*
*/
public class HumanResources extends Employee {
/*重写work()方法*/
public void work() {
System.out.println("人事部人员在工作...");
}
}
package com.neusoft.www.test;
import com.neusoft.www.po.Employee;
import com.neusoft.www.po.Financial;
import com.neusoft.www.po.HumanResources;
/**
*
*
* @date 2014.03.04
* @function 类的继承与多态
*
*
*/
public class EmployeeTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
HumanResources hr = new HumanResources();//实例化一个人力资源部对象
hr.seteName("霍元甲");
hr.work();//调用人力资源部门的work()方法
Financial fn = new Financial();//实例化一个财政部门的对象
fn.seteName("陈真");
fn.work();//调用财政部门的work()方法
Employee humanR = new HumanResources();//使用的多态
humanR.sleep(hr);//多态和继承的结合使用
humanR.sleep(fn);
}
}