• 分析以下需求,并用代码实现:

  •  1.定义项目经理类
    属性:
    姓名 工号 工资 奖金
    行为:
    工作work 2.定义程序员类
    属性:
    姓名 工号 工资
    行为:
    工作work

    要求: 向上抽取一个父类,让这两个类都继承这个父类,共有的属性写在父类中,子类重写父类中的方法

    编写测试类: 完成这两个类的测试

  • 分析:

  •  项目经理类:姓名,工号,工资,奖金,工作work(){}
    程序员类:姓名,工号,工资,工作work(){} 抽象雇员(employee)类:
    姓名,工号,工资,工作work();

*/

package com.itheima3;

//抽象雇员(employee)类:
//姓名,工号,工资,工作work();

public abstract class Employee {

private String name;

private String ID;

private double salary;

public Employee() {}

public Employee(String name,String ID,double salary) {
this.name = name;
this.ID = ID;
this.salary = salary;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getID() {
return ID;
} public void setID(String iD) {
ID = iD;
} public double getSalary() {
return salary;
} public void setSalary(double salary) {
this.salary = salary;
} public abstract void work();

package com.itheima3;

//项目管理类

public class Manager extends Employee{

private double bonus;

public Manager() {}

public Manager(String name,String ID,double salary,double bonus) {
super(name,ID,salary);
this.bonus = bonus;
} public double getBonus() {
return bonus;
} public void setBonus(double bonus) {
this.bonus = bonus;
} @Override
public void work() {
System.out.println("项目经理要擅于管理");
}

}

package com.itheima3;

public class Programmer extends Employee{

public Programmer() {}

public Programmer(String name,String ID,double salary) {
super(name,ID,salary);
} @Override
public void work() {
System.out.println("程序员要努力写代码");
}

}

package com.itheima3;

public class Test {

public static void main(String[] args) {
Manager m = new Manager("老王","001",30000,8000);
System.out.println(m.getName()+"---"+m.getID()+"---"+m.getSalary()+"---"+m.getBonus());
m.work(); System.out.println("--------------------------------"); Programmer p = new Programmer("小李","002",15000);
System.out.println(p.getName()+"---"+p.getID()+"---"+p.getSalary());
p.work();
}

}

控制台输出结果

最新文章

  1. mysql求最大第二,最大第三个数
  2. 如何让WEBAPI 能够进行跨越访问
  3. 增大VM下linux的根目录空间
  4. [mybatis] mybatis错误:Invalid bound statement (not found)
  5. Mac 平台下功能强大的Shimo软件使用指南
  6. windows xp 安装mysql5.6.17-ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password
  7. Java为什么只能单继承?
  8. Android 解决ListView中每一项与button冲突
  9. cojs 西瓜 解题报告
  10. C#传值
  11. 这才是正确删除 office 的方式
  12. 学习pthreads,给线程传递多个參数
  13. SAP ABAP规划 使用LOOP READ TABLE该方法取代双LOOP内部表的方法
  14. 从实战出发,谈谈 nginx 信号集
  15. Codeforces 375B Maximum Submatrix 2 (DP)
  16. Ubuntu网络不通解决办法
  17. 最全面的DialogFragment的使用,实现DialogFragment全屏、背景透明;
  18. 通过修改Tomcat配置,解决乱码问题
  19. Flex 得到一个对象的所有属性
  20. 让 markdown 生成带目录的 html 文件

热门文章

  1. 精彩的jquery弹幕效果
  2. Web三维编程入门总结之三:3D碰撞检测初探
  3. 「日常开发」记一次因使用Date引起的线上BUG处理
  4. python os模块判断文件是否存在
  5. java 容器(collection)--ArrayList 常用方法分析 源码分析
  6. thinkphp5.1+layui2.x 时间戳转换为日期格式
  7. numpy库的学习笔记
  8. Java5-7作业总结(第八次作业)19201421-吴志越
  9. 即将进行论文答辩的我发现MyEclipse 2016 激活过期害得我又一次把 MyEclipse 2016 给重新激活注册,详细的图文解说激活过程
  10. Linux运维基础阶段部分复习概要