对于在同一家公司工作的经历和员工而言,两者是有很多共同点的。例如,每个月都要发工资,但是经理在完成目标任务后,还会获得奖金。此时,利用员工类来编写经理类就会少写很多代码,利用继承技术可以让经理类使用员工类中定义的属性和方法。编写程序,通过继承演示经理与员工的差异。

思路分析:典型的继承问题。父类是员工类,子类是经理类,经理类继承员工类,这样经理类中就只用额外实现奖金,即增加表示奖金的成员变量和设置及获取奖金的成员方法。

代码如下:

import java.util.Date;		

public class Employee {

    private String name;		//员工的姓名
private double salary; //员工的工资
private Date birthday; //员工的生日 public String getName() { //获取员工的姓名
return name;
} public void setName(String name) { //设置员工的姓名
this.name = name;
} public double getSalary() { //获取员工的工资
return salary;
} public void setSalary(double salary) { //设置员工的工资
this.salary = salary;
} public Date getBirthday() { //获取员工的生日
return birthday;
} public void setBirthday(Date birthday) { //设置员工的生日
this.birthday = birthday;
} }
public class Manager extends Employee {
private double bonus;// 经理的奖金 public double getBonus() {// 获得经理的奖金
return bonus;
} public void setBonus(double bonus) {// 设置经理的奖金
this.bonus = bonus;
}
}
import java.util.Date; public class Test {
public static void main(String[] args) {
Employee employee = new Employee();//创建Employee对象并为其赋值
employee.setName("Java");
employee.setSalary(100);
employee.setBirthday(new Date());
Manager manager = new Manager();//创建Manager对象并为其赋值
manager.setName("明日科技");
manager.setSalary(3000);
manager.setBirthday(new Date());
manager.setBonus(2000);
//输出经理和员工的属性值
System.out.println("员工的姓名:" + employee.getName());
System.out.println("员工的工资:" + employee.getSalary());
System.out.println("员工的生日:" + employee.getBirthday());
System.out.println("经理的姓名:" + manager.getName());
System.out.println("经理的工资:" + manager.getSalary());
System.out.println("经理的生日:" + manager.getBirthday());
System.out.println("经理的奖金:" + manager.getBonus());
}
}

效果如图所示:

Java实现经理与员工的差异的更多相关文章

  1. [原创]上海好买基金招高级Java技术经理/运维主管/高级无线客户端开发等职位(内推)

    [原创]上海好买基金招高级Java技术经理/运维主管/高级无线客户端开发等职位(内推) 内部推荐职位 高级JAVA技术经理: 岗位职责: 负责项目管理(技术方向),按照产品开发流 ,带领研发团队,制定 ...

  2. 在vb.net中使用委托:经理 和 员工

    现在开发的一个 vb.net系统,其中有两个窗体:alert窗体和 case窗体. 在alert窗体中列出了当前可以操作的若干个alert(可以理解为数据记录),用户可以选择将其中一个或几个alert ...

  3. Github经理和员工开发

    Git简介 Git是目前世界上最先进的分布式版本控制系统 git的两大特点: 版本控制:可以解决多人同时开发的代码问题,也可以解决找回历史代码的问题 分布式:Git是分布式版本控制系统,同一个Git仓 ...

  4. 第一个Java web项目:员工管理系统

    要求: 做一个登陆页面,实现登录,用户名和密码都是admin,登录成功后,用session记录用户名,登录失败,请提示失败原因. 做一个简单的管理系统,实现注册,修改,查询,删除 员工的功能,注册内容 ...

  5. java集合-- arraylist小员工项目

    import java.io.*; import java.util.ArrayList; public class Emexe { public static void main(String[] ...

  6. Java语言与C++语言的差异总结

    Java的设计者曾说过,设计这门语言的灵感主要来自于C++. 世上先有C++,然后才有Java,整个Java语言的发展历史就是一部对C++的填坑史.所以在Java语言学习过程中,将其与C++语言对比是 ...

  7. Java语言和C++语言的差异

    Java采用了C及C++的语法格式,对于学习过C及C++的程序设计者来说,学习Java将有可能很轻松.但是,如果仔细检查Java语言的许多细节,就会发现Java取消了不少C及C++的特性,并且加入了一 ...

  8. JAVA System.getProperty() 与 System.getenv() 差异及示例

    System.getenv() 方法是获取指定的环境变量的值. System.getenv() 接收参数为任意字符串,当存在指定环境变量时即返回环境变量的值,否则返回null. System.getP ...

  9. Java,JSP,JavaScript三和差异

    JSP代表:java server page,意义是基于JAVA服务器的网络技术,随着asp,php喜欢,我们正在创造的语言网页 JavaScript:它已成为JS,随着JAVA系,就是赶时髦起个这名 ...

随机推荐

  1. Sql Over的用法

    转载自:http://www.cnblogs.com/lanzi/archive/2010/10/26/1861338.html OVER(PARTITION BY)函数介绍 开窗函数 Oracle从 ...

  2. CentOS防SYN攻击

    netstat -anp |awk '{print $6}'|sort|uniq -c |sort -rn 172 ESTABLISHED 59 CONNECTED 589 SYN_RECV 15 S ...

  3. Git 创建操作

    在本章中,我们将看到如何创建一个远程Git仓库,从现在开始,我们将会把它作为Git服务器.我们需要一个的Git服务器允许团队协作. 创建新用户 # add new group [root@CentOS ...

  4. 代码动态设置edittext输入类型为密码类型

    开发中常常会用到EditText输入框,要将他的输入类型设置为密码输入,但是直接在布局文件中设置时,hint字体风格就会不一样 例如,在布局文件中直接设置是这样的(如下图),字体风格明显跟上一行的不一 ...

  5. 【转】腾讯移动品质中心TMQ [腾讯 TMQ] 测试管理平台大比拼

    简介 测试管理平台是贯穿测试整个生命周期的工具集合,它主要解决的是测试过程中团队协作的问题,比如缺陷管理.用例管理.测试任务管理等. 目前市面上比较流行的测试管理工具有QC. Mantis. BugZ ...

  6. github开源库(一)

    http://www.open-open.com/lib/view/open1388317199516.html 1.ActionBarSherlock ActionBarSherlock应该算得上是 ...

  7. python-下载百度图片到本地

    import requests import os def getManyPages(keyword,pages): params=[] for i in range(30,30*pages+30,3 ...

  8. 第三百七十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现我的搜索以及热门搜索

    第三百七十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现我的搜索以及热门 我的搜素简单实现原理我们可以用js来实现,首先用js获取到 ...

  9. CentOS6.8下安装MySQL5.6

    一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...

  10. php foreach 传值还是传引用

    From: http://my.oschina.net/guomingliang/blog/215457 php 中遍历一个array时可以使用for或foreach,foreach的语法为:fore ...