继承案例分析二

定义员工类,具有姓名、年龄、性别属性,并且有构造方法和显示数据方法。定义管理层类,继承员工类,并且有自己的属性 职务和年薪。定义职员类,继承员工类,并拥有自己的属性所属部门和月薪。

class JavaDemo 
{
	public static void main(String[] args) 
	{
		Management man = new Management("王五",38,"男","架构师",198000.3);
		Worker woker = new Worker("李四",19,"男","程序员",4900);
		
		System.out.println(man.getInfo());
		System.out.println(woker.getInfo());
	}
}

class Staff
{
	private String name;
	private int age;
	private String sex;
	
	public Staff(){}//无参构造
	public Staff(String name,int age,String sex){
		this.name = name;
		this.age = age;
		this.sex = sex;
	}

	public String getInfo(){
		return "姓名:"+this.name+"\t年龄:"+this.age+"\t性别:"+this.sex;
	}
}

class Management extends Staff	//管理层
{
	private String job;//职务
	private double yearSalary;//年薪
	//构造方法
	public Management(){}
	public Management(String name,int age,String sex,String job,double yearSalary){
		super(name,age,sex);//调用父类构造方法
		this.job = job;
		this.yearSalary = yearSalary;
	}
	//返回结果
	public String getInfo(){
		return "【管理层】"+super.getInfo()+"\t职位:" + this.job + "\t年薪:" + this.yearSalary;//super.getInfo()调用父类的getInfo()方法
	}
}

class Worker extends Staff	//职员类
{
	private String department;//部门
	private double monthSalary;//月薪
	//构造方法
	public Worker(){}
	public Worker(String name,int age,String sex,String department,double monthSalary){
		super( name,age,sex);//调用父类构造方法
		this.department = department;
		this.monthSalary = monthSalary;
	}
	//返回结果
	public String getInfo(){
		return "【职员】"+super.getInfo() + "\t部门:"+this.department+"\t月薪"+this.monthSalary;//super.getInfo()调用父类的getInfo()方法
	}
}

在这里插入图片描述

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值