1、实现一个名为Person的类和它的子类Employee,Manager是Employee的子类,设计一个方法add用于涨工资,普通员工一次能涨10%,经理涨20%,具体要求如下:

(1)Person类中的属性有:name、address地址定义该类的构造方法

(2)Employee类中的属性有:工号id、工资wage、工龄workAge,定义该类的构造方法

(3)Manager类中的属性有:级别level,定义该类的构造方法

(4)编写一个测试类,创建一个员工和一个经理对象,给该员工和经理涨工资,并输出其有的信息。

代码块部分

package com.company.Demo3;public class Person {public String name;public String address;public Person(String name,String address){this.name=name;this.address=address;}
}
class Employee extends Person{public int id;public double wage;public int  workAge;public Employee(String name,String address,int 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;}public double getWage() {return wage;}public void setWage(double wage) {this.wage = wage;}
}
class Manager extends Employee{private String level = ""; //1为普通员工 0为经理public Manager(String name,String address,int id,double wage,int workAge,String level){super(name,address,id,wage,workAge);this.level=level;}public String getLevel() {return level;}public void setLevel(String level) {this.level = level;}
}
Test.java
-----------
package com.company.Demo3;
public class Test {public static void main(String[] args) {Manager employees = new Manager("小华","上海",10,3500,5,"1");Manager manager = new Manager("小明","上海",20,5000,10,"0");//传入职位,Manager类型的对象没有add()方法,所有自动搜寻其父类,调用add方法employees.add(employees.getLevel());manager.add(manager.getLevel());System.out.println("e wage is :" + employees.getWage());System.out.println("m wage is :" + manager.getWage());}}

运行结果为

总结:

学会一个简单的继承,以及构造器的生成,super在构造器中的作用。

实现一个名为Person的类和它的子类Employee,Manager是Employee的子类,设计一个方法add用于涨工资,普通员工一次能涨10%,经理涨20%.相关推荐

  1. Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类)设计一个名为Person的类及其两个名为Student和Employee的子类

    Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类) 题目 缺陷 UML图 代码 Test02_MyDate.java:用于参考的My ...

  2. Java黑皮书课后题第10章:*10.10(Queue类)10.6节给出一个Stock类。设计一个名为Queue的类用于存储整数。像栈一样,队列保存元素。在栈中,元素后进先出。队列中元素先进先出

    10.10(Queue类)10.6节给出一个Stock类,设计一个名为Queue的类用于存储整数 题目 程序 破题 代码 Test10.java Test10_Queue.java UML 题目 程序 ...

  3. Java黑皮书课后题第10章:10.4(MyPoint类)设计一个名为MyPoint的类,代表一个以x坐标和y坐标表示的点

    10.4(MyPoint类)设计一个名为MyPoint的类,代表一个以x坐标和y坐标表示的点 题目 程序 代码 Test4.java Test4_MyPoint.java 运行实例 UML 题目 程序 ...

  4. Java黑皮书课后题第10章:10.3(MyInteger类)设计一个名为MyInteger的类

    10.3(MyInteger类)设计一个名为MyInteger的类 题目 程序说明 代码 Test3.java Test3_MyInteger.java 运行实例 UML 题目 程序说明 测试程序:T ...

  5. Java黑皮书课后题第10章:*10.1(Time类)设计一个名为Time的类。编写一个测试程序,创建两个Time对象(使用new Time()和new Time(555550000))

    Java黑皮书课后题第10章:*10.1设计一个名为Time的类.编写一个测试程序,创建两个Time对象 题目 程序 代码 Test1.java Test1_Time.java 运行结果 UML 题目 ...

  6. Java黑皮书课后题第9章:**9.13(Location类)设计一个名为Location的类,定位二维数组中的最大值及其位置。

    Java黑皮书课后题第9章:**9.13(Location类)设计一个名为Location的类,定位二维数组中的最大值及其位置 题目 破题 代码 Test13 Test13_Location 运行结果 ...

  7. Java黑皮书课后题第9章:*9.11(代数:2*2的线性方程)为一个2*2的线性方程设计一个名为LinearEquation的类

    Java黑皮书课后题第9章:*9.11(代数:2*2的线性方程)为一个2*2的线性方程设计一个名为LinearEquation的类 题目 破题 代码 Test10 Test11_LinearEquat ...

  8. Java黑皮书课后题第9章:*9.10(代数:二次方程式)为二次方程式设计一个名为QuadraticEquation的类

    Java黑皮书课后题第9章:*9.10(代数:二次方程式)为二次方程式设计一个名为QuadraticEquation的类 题目 破题 代码 Test10 Test10_QuadraticEquatio ...

  9. Java黑皮书课后题第9章:9.8(Fan类)设计一个名为Fan的类来代表风扇

    9.8(Fan类)设计一个名为Fan的类来代表风扇 题目 破题 代码 Test8 Test8_Fan 执行结果 UML 题目 破题 Test8:测试程序 Test8_Fan:实现题目要求 代码 Tes ...

最新文章

  1. 【PL/SQL的优点】
  2. 四边形可以分为几类_学习知识:四边形有几种类型
  3. 素数筛选-hdu2710
  4. 使用Azure轻松实现Teams App的全球合规性
  5. HTML5期末大作业:汽车销售网站模板设计(7个页面) HTML+CSS+JavaScript 企业网页设计源码...
  6. 记事本怎么运行c语言代码,如何让记事本里的代码运行
  7. Python 2与Python 3对H5牌九棋牌搭建的区别
  8. 收藏 | 电子元器件图片、名称、符号图形对照
  9. 基于Python的指数基金量化投资 - 指数的净资产收益率计算
  10. 织梦php环境搭建,织梦建站入门:搭建本地PHP环境图文教程
  11. 就业季必看的职业规划
  12. Win10 官方版下载地址 windows10 1909微软原版光盘镜像下载
  13. UE《空山新雨后》总结笔记
  14. 从maven私服(nexus)拉取jar文件,解析项目pom依赖信息
  15. 项目管理软件用哪个好?推荐这6款项目管理工具
  16. mybatis-plus快速入门,手把手搭建mybatis-plus第一个项目
  17. row在C语言什么意义,ROWC是什么意思
  18. 鸿蒙天钟小白的故事,小白 - 感人故事 - 故事365
  19. FME-CAD专题之-生成带扩展属性的CAD文件
  20. JS延迟5秒加载方法

热门文章

  1. 论文学习记录:PROGRESSIVE GROWING OF GANS
  2. 【小林课堂】【光学】 透镜成像规律
  3. SRM管理系统是什么?能为企业带来什么效益
  4. 现在你们叫我大佬,其实我在大学就是渣渣
  5. 使用CP2102给stm32烧写代码
  6. 如何用C语言编写简单的日历查询程序
  7. 如何成为一个全栈数字化设计师
  8. 动态规划:游艇租用问题
  9. 计算机信息系统应急管理办法,信息系统安全措施和应急安全保障措施
  10. C语言-怎么写一个自己的qsort函数