zoukankan      html  css  js  c++  java
  • Day_08【面向对象】扩展案例1_测试项目经理类和程序员类

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

    •  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();
    }
    

    }

    控制台输出结果
    控制台输出结果

  • 相关阅读:
    Jmeter 接口测试实战-有趣的cookie
    Jmeter输出完美报告
    记忆-走进古镇
    JMeter接口测试实战-动态数据验证
    JMeter写入文件
    正则表达式匹配任意字符(包括换行符)
    No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android"
    Unable to get the CMake version located at
    adb 查看 android手机的CPU架构
    java.lang.UnsatisfiedLinkError:dlopen failed: “**/*/arm/*.so” has unexpected e_machine: 3
  • 原文地址:https://www.cnblogs.com/zzzsw0412/p/12772545.html
Copyright © 2011-2022 走看看