zoukankan      html  css  js  c++  java
  • 第十六次作业

    4、Cola公司的雇员分为以下若干类:(知识点:多态)

    (1) ColaEmployee :这是所有员工总的父类,属性:员工的姓名,员工的生日月份。

    • 方法:getSalary(int month) 根据参数月份来确定工资,如果该月员工过生日,则公司会额外奖励100 元。

    (2) SalariedEmployee :     ColaEmployee 的子类,拿固定工资的员工。

    • 属性:月薪

    (3) HourlyEmployee :ColaEmployee 的子类,按小时拿工资的员工,每月工作超出160 小时的部分按照1.5 倍工资发放。

    • 属性:每小时的工资、每月工作的小时数

    (4) SalesEmployee :ColaEmployee 的子类,销售人员,工资由月销售额和提成率决定。

    • 属性:月销售额、提成率

    (5) 定义一个类Company,在该类中写一个方法,调用该方法可以打印出某月某个员工的工资数额,写一个测试类TestCompany,在main方法,把若干各种类型的员工放在一个ColaEmployee 数组里,并单元出数组中每个员工当月的工资。

    package kkk;
    
    public class lll{
        String name;
        int bmonth;
        public void getSalary(int month) {
            System.out.println("月份:"+month);
        }
    }
    package kkk;
    
    public class lll {
         public void method(ColaEmployee a) {
                if(a instanceof HourlyEmployee) {
                    HourlyEmployee H =(HourlyEmployee)a;
                    H.hsal("张三",45,175,6,6);
                }else if(a instanceof SalariedEmployee) {
                    SalariedEmployee c=(SalariedEmployee)a;
                    c.getsal("李四",7,7,1000);
                }else if(a instanceof SalesEmployee) {
                    SalesEmployee b = (SalesEmployee)a;
                    b.xiaoshouSalar("王五",2000,3,5,6);
                }
            }
    }
    
    package kkk;
    
    public class HourlyEmployee extends  lll{
        public void hsal(String name ,int hoursal,int mhour,int bmonth, int month){
            if(month==bmonth) {
                if(mhour<=160 && mhour>0) {
                    System.out.println(name+"工资是"+(hoursal*mhour)+100);
                }else {
                    System.out.println(name+"工资是"+(((mhour-160)*hoursal+(hoursal*160))+100));
                }
            }else {
                if(mhour<=160 && mhour>0) {
                    System.out.println(name+"工资是"+(hoursal*mhour));
                    }else {
                        System.out.println(name+"工资是"+(((mhour-160)*hoursal+(hoursal*160))));
                    }
            }    
        }
    }
    
    package kkk;
    
    public class SalariedEmployee extends lll{
        int mmoney;
        public void getsal(String name,int month,int bmonth, int mmoney) {
            if(month==bmonth) {
                System.out.println(name+"工资是:"+(mmoney+100));
            }else {
                System.out.println(name+"工资是:"+mmoney);
            }
            
        }
    }
    
    package kkk;
    
    public class SalesEmployee extends lll {
        int monthxiaoshou;
        int tichenglv;
        public void xiaoshouSalar(String name,int mxiaoshou,int tichenglv,int bmonth,int month) {
            if(month==bmonth) {
                System.out.println(name+"工资是"+(mxiaoshou*(1+tichenglv)+100));
            }else {
                System.out.println(name+"工资是"+(mxiaoshou*(1+tichenglv)));
            }
        }
    }
    
    package kkk;
    
    public class lll {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
              Company C = new Company();
                HourlyEmployee c= new HourlyEmployee();
                C.method(c);
                SalariedEmployee b = new SalariedEmployee();
                C.method(b);
                SalesEmployee a = new SalesEmployee();
                C.method(a);
        }
    
    }
  • 相关阅读:
    关于celery踩坑
    关于git的分批提交pull requests流程
    SymGAN—Exploiting Images for Video Recognition: Heterogeneous Feature Augmentation via Symmetric Adversarial Learning学习笔记
    AFN—Larger Norm More Transferable: An Adaptive Feature Norm Approach for Unsupervised Domain Adaptation学习笔记
    Learning to Transfer Examples for Partial Domain Adaptation学习笔记
    Partial Adversarial Domain Adaptation学习笔记
    Partial Transfer Learning with Selective Adversarial Networks学习笔记
    Importance Weighted Adversarial Nets for Partial Domain Adaptation学习笔记
    Exploiting Images for Video Recognition with Hierarchical Generative Adversarial Networks学习笔记
    improved open set domain adaptation with backpropagation 学习笔记
  • 原文地址:https://www.cnblogs.com/xuwei123456/p/12921407.html
Copyright © 2011-2022 走看看