zoukankan      html  css  js  c++  java
  • 实现一个名为Person的类和它的子类Employee,Manager是Employee的子类,设计一个方法add用于涨工资,普通员工一次能涨10%,经理能涨20%。

    1、实现一个名为Person的类和它的子类Employee,Manager是Employee的子类,设计一个方法add用于涨工资,普通员工一次能涨10%,经理能涨20%。具体要求如下:
    (1)Person类中的属性有:姓名name、地址address,定义该类的构造方法; 
    (2)Employee类中的属性有:工号id、工资wage、工龄workAge,定义该类的构造方法; 
    (3)Manager类中的属性有:级别level,定义该类的构造方法; 
    (4)编写一个测试类,创建一个员工和一个经理对象,给该员工和经理涨工资,并输出其具有的信息。

    Personjava
    -----------------
    package com.fs.test;
    
    public class Person {
        private String name;
        private String address;
        //定义构造方法
        public Person(String name, String address){
            this.name = name;
            this.address = address;
        }
    
    }
    
    
    Employee.java
    ------------
    
    package com.fs.test;
    //继承Person类
        public class Employee extends Person {
            private String ID;
            private double wage;
            private int workAge;
    
        public Employee(String name, String address, String ID, double wage, int workAge){
            super(name, address);  //调用父类的构造方法
            this.ID = ID;
            this.wage = wage;
            this.workAge = workAge;
            }
        
        public double add(String position){//  判断职位
            if(position == "0"){
                wage = wage*1.2;
            }
            else{
                wage = wage*1.1;
            }
            return wage;
        }
            //设置get/set方法
        public double getWage() {
            return wage;
        }
        public void setWage(double wage) {
            this.wage = wage;
        }
    }
    
    
    --------------
    Manager.java
    ------------
    package com.fs.test;
    
    //继承Employee类
    public class Manager extends Employee{
      private String level = "";  //1为普通员工,0为经理
      
      public Manager(String name, String address, String ID, double wage, int workAge, String level){
          super(name, address, ID, wage, workAge);
          this.level = level;
      }
          
          //设置get/set方法
      public String getLevel() {
          return level;
      }
    
      public void setLevel(String level) {
          this.level = level;
      }
    }
    ----------
    Test.java
    --------------
    
    package com.fs.test;
    
    public class Test {
    
        public static void main(String[] args) {
        //  新建对象
            Manager normal = new Manager("狗剩", "哈尔滨", "001", 3500, 2, "1");
            Manager manager = new Manager("铁蛋", "长春", "002", 10000, 7, "0");
            //  传入职位,Manager类型的对象没有add()方法,所以自动搜寻其父类,调用add()方法
            normal.add(normal.getLevel());
            manager.add(manager.getLevel());
            
            System.out.println("normal wage is:"+normal.getWage());
            System.out.println("manager wage is:"+manager.getWage());
        }
    }
  • 相关阅读:
    博客搬迁
    Android 集成FaceBook实现第三方登陆
    android-Xfermode模式详解
    android FileNotFoundException
    EditText 隐藏或者显示输入内容
    Fragment+ViewPager静止滑动,去掉默认的滑动效果
    Xcode 常用插件(持久更新)
    XMPP- JID 与 XMPP的命名空间
    android openfire 和 xmpp
    IOS-数据持久化的几种方式
  • 原文地址:https://www.cnblogs.com/ooo888ooo/p/11099965.html
Copyright © 2011-2022 走看看