java入门 学习日志九(面向对象七)

数据表与简单java类映射

一个部门可以有多个雇员,可以用对象数组完成。

class Dept{ //部门类
	private int deptno;    //部门编号
	private String dname; //部门名称
	private String loc;  //部门位置
	private Emp emp[];  //若干雇员
	public Dept(int deptno,String dname,String loc) { //构造方法初始化部门信息
		this.deptno=deptno;
		this.dname=dname;
		this.loc=loc;
	}
	public void setEmp(Emp emp[]) { //设置雇员信息
		 this.emp=emp;	
	}
	public Emp[] getEmp() { //获取雇员信息
		return this.emp;
	}
	public String getInfo() {
		return "部门的编号:"+this.deptno+" 部门的名称是:"+this.dname+" 部门的位置是:"+this.loc;
	}
}
class Emp{
	private int empno; //雇员编号
	private String ename;//雇员姓名
	private String job;//雇员职位
	private double sal;//基本工资
	private double comm;//佣金
	private Emp mgr;//领导
	private Dept dept;//部门
	public  Emp(int empno,String ename,String job,double sal,double comm) {//构造类初始化雇员信息
		this.empno=empno;
		this.ename=ename;
		this.job=job;
		this.sal=sal;
		this.comm=comm;
	}
	public void setMgr(Emp mgr) {//设置领导信息
		this.mgr=mgr;
	}
	public Emp getMgr() {//获取领导信息
		return this.mgr;
	}
	public void setDept(Dept dept) {//设置部门信息
		this.dept=dept;
	}
	public Dept getDept() {//获取部门信息
		return this.dept;
	}
	public String getInfo() {//获取雇员信息
		return "雇员编号:"+this.empno+" 雇员姓名是:"+this.ename+" 雇员职位是:"+this.job+" 雇员基本工资是:"+this.sal+" 雇员佣金是:"+this.comm;
	}
}

public class Demo1{
	public static void main(String args[]) {
		Dept dept = new Dept(01,"保安大队","白宫");
		Emp e1=new Emp(1,"老付","队长",999999.123,99999.567);
		Emp e2=new Emp(2,"小付","副队长",88888.123,88888.123);
		Emp e3=new Emp(3,"张三","保安",6666.123,6666.123);
		Emp e4=new Emp(4,"李四","保安",6666.123,6666.123);
		e1.setDept(dept);
		e2.setDept(dept);
		e3.setDept(dept);
		e4.setDept(dept);
		e2.setMgr(e1);
		e3.setMgr(e1);
		e4.setMgr(e2);
		dept.setEmp(new Emp[] {e1,e2,e3,e4});
		System.out.println(e4.getInfo());//雇员信息
		System.out.println("\t|-"+e4.getMgr().getInfo());//雇员的领导信息
		System.out.println("\t|-"+e4.getDept().getInfo());//雇员的部门信息
		for(int i=0;i<dept.getEmp().length;i++) {//获取部门雇员信息
			System.out.println("\t|-"+dept.getEmp()[i].getInfo());
		}
	}
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值