员工类继承java_38.Java继承经典案列-经理与员工(2.0)-程序员宅基地

技术标签: 员工类继承java  

已知employee员工是超类,manager经理是子类

manager—>employee

set方法给属性赋值,get方法取得值

1、超类Employee.java

定义属性private私有—》构造方法初始化对象—》用get方法取得值—》LocalDate在JDK1.8中,新增了处理日期的类

LocalDate.of(int year, int month, int dayOfMonth)

根据参数设置日期,参数分别为年,月,日

package com.em;

//import java.util.Date;

import java.time.LocalDate;

public class Emlpoyee {

private String name;

private double salary;

private LocalDate dateday;

public Emlpoyee(String namae,double salary,int year,int month,int day){

this.name = namae;

this.salary = salary;

// this.dateday = dateday;

dateday = LocalDate.of(year,month,day);

}

public String getName() {

return name;

}

public double getSalary() {

return salary;

}

public LocalDate getDateday() {

return dateday;

}

}

2、子类Manager.java

定义属性private私有—》构造方法初始化对象—》set方法赋值属性extra—》get方法获取超类的getSalary(),这里不能直接返回想要的值 return salary2 + extra; 这会报错的 —原因是 我文章36.继承私有域的理解

—》解决 借助接口 + super

所以是 double salary2 = super.getSalary();

return salary2 + extra;

package com.em;

//import java.util.Date;

public class Manager extends Emlpoyee{

private double extra;

public Manager(String namae,double salary,int year,int month,int day){

super(namae,salary,year,month,day);

// super(namae, salary, dateday);

extra = 0; //默认值

}

public double getSalary() {

// double salary2 = getSalary();//不能

double salary2 = super.getSalary();

return salary2 + extra;

}

public void setExtra(double extra) {

this.extra = extra;

}

}

3、测试类 Test.java

用子类Manager创建对象(new)并赋值—》该对象调用Manager里面赋好值的set方法—》用超类Employee创建对象(new)并赋值,第一个由于后面要循环遍历出来,用上面那个Manger创建好的值—》for(Employee e : staff)把数组循环遍历出来—》sout+e.get方法

另一种方式遍历

for (int i = 0; i < arr.length; i++){

System.out.println(arr[i]);

}

package com.em;

public class Test {

public static void main(String[] args) {

Manager mange = new Manager("xiaoming",80000,2020,1,2);

mange.setExtra(19999);

Emlpoyee[] emlpoyees = new Emlpoyee[3];

emlpoyees[0] = mange;

emlpoyees[1] = new Emlpoyee("xiaozhang",80000,2020,1,3);

emlpoyees[2] = new Emlpoyee("xiaohua",60000,2020,1,3);

for (Emlpoyee e : emlpoyees){

System.out.println("name=" + e.getName() +",salary=" + e.getSalary() + ",date=" + e.getDateday());

}

}

}

4、运行结果:

name=xiaoming,salary=99999.0,date=2020-01-02

name=xiaozhang,salary=80000.0,date=2020-01-03

name=xiaohua,salary=60000.0,date=2020-01-03

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_32825467/article/details/114595566

智能推荐

程序员裸辞2个月找不到工作,心态爆炸了_程序员找不到工作怎么调整心情-程序员宅基地

文章浏览阅读4.2k次。3月初裸辞,找了近2个多月的工作了,至今还没找到,感觉心好慌,不知道该怎么办了?”裸辞多久找不到工作,心态会崩?找不到工作的时候压力很大,有人说自信会很受打击,还有人说会很绝望,是人生的低谷……尽管很多时候我们自己知道,我不是找不到工作,只是找不到理想中的好工作。但这也不能改变你的空白期正在一天一天变长,不妥协的那份坚定正在一天一天动摇的事实。那么,找不到工作的时候,你会降低标准吗?求..._程序员找不到工作怎么调整心情

Javascript题库-程序员宅基地

文章浏览阅读7.4k次,点赞9次,收藏63次。一、填空题JavaScript有两种引用数据类型 :__数组___、__对象__。Javascript通过__setTimeout___延迟指定时间后,去执行某程序。Javascript里String对象通过__indexOf__方法取第一次出现子字符 串的字符位置。Javascript里取字符串的长度是__.length__,取数组的长度是 ___.length_____..._settimeout(“buy()”,20)

【arduino】继续蜂鸣器音乐播放,arduinoIDE里调用音乐播放库-程序员宅基地

文章浏览阅读2.3k次。微信关注“DLGG创客DIY”设为“星标”,重磅干货,第一时间送达。 昨天简单的介绍了一下蜂鸣器硬件和米思齐上如何演奏音乐(一种非常简单的用arduino控制蜂鸣器播放音乐的方案..._米思齐放歌曲程序

伪类如何动态在html设置样式,用js实现before和after伪类的样式修改的示例代码-程序员宅基地

文章浏览阅读1k次。本文介绍了使用javascript,jQuery实现修改before,after伪类的样式,分享给大家,具体如下:最近遇到一个需要改变:before,:after 伪类的样式,发现css中并不能直接选择某一个元素的:before和:after伪类元素,所以特总结了使用javascript和jQuery改变元素的:before和:after伪类样式的方法。类如如下的html及样式Hello,are ..._jq修改伪类after样式

使用 acl 库开发一个 HTTP 下载客户端_acl库 http-程序员宅基地

文章浏览阅读1.4k次。  在 acl 的协议库(lib_protocol) 中有专门针对 HTTP 协议和 ICMP 协议的,本文主要介绍如何使用 lib_protocol 协议库来开发一个简单的 http 客户端。下面首先介绍一下几个本文用到的函数接口。/** * 创建一个 HTTP_UTIL 请求对象 * @param url {const char*} 完整的请求 url * @param method {const char*} 请求方法,有效的请求_acl库 http

最简单的C语言函数转换为汇编语言-程序员宅基地

文章浏览阅读1.8k次。00401010 push ebp00401011 mov ebp,esp00401013 sub esp,40h EBP寻址00401016 push ebx00401017 push esi00401018 push edi00401019 lea edi,[ebp-40h]0040101C mov ecx,10h00401021.

随便推点

关于JAVA中的加密处理使用MD5和SHA两种方式_java sha加密方式导那个包-程序员宅基地

文章浏览阅读519次。使用MD5和SHA进行加密处理用两种方式:1&gt;&gt;一种是使用JAVA自带的加密处理(PS:自带的加密方式适合1.6一下版本..更高的版本被禁用了)2&gt;&gt;一种是导入第三方的jar包(commons-codec-1.9.jar)下载地址:commons-codec-1.9.jar(2018年4月11日20:29:01最新是1.11版本)这里我使用1.9版本(PS:MD5和SHA加..._java sha加密方式导那个包

CTSC 2017 游记-程序员宅基地

文章浏览阅读85次。惨啊,弱菜选手只报上了CTSC,去不了APIO。day -1晚上的时候,坐上了去帝都的卧铺。由于第二天就是luogu月赛round1,还得在火车上赶工出题...颓了好长时间,把题面写出来了,用的是之前的一个idea。感觉很累,就先睡了。意料之中地没睡好,分别在1点、4点、7点三次醒来,最后一次是真的起床。day 0吃了早饭就开始颓标程,发现非常好写。过了1h就下车了,坐帝都地铁来到了..._ctsc2017 游记

两个QoS综合配置案例-程序员宅基地

文章浏览阅读119次。 许多读者朋友是一说到QoS就头痛,认为太难了。其实,虽然QoS的工作原理有些深奥,但QoS的配置还是比较简单的,只要你理解了各个关键参数的含义就没什么大问题了。本篇介绍的两个QoS配置案例介绍的是华为S系列交换机中通过QoS功能实现拥塞避免和拥塞管理的配置方法,全文摘自今年元月份刚刚出版上市,由华为公司授权并审核通过的《华为交换机学习指南》一书:http://item.jd.com/11355..._color green low

物联网开发(一)-Arduino开发环境搭建_物联网开发环境的构建-程序员宅基地

文章浏览阅读1.5k次。我们主要利用Arduino开发esp82661.进入Arduino官网,下载arduino安装包。www.arduino.cc2.点击第一个,我是64位windows系统训责第一个就可以。2.arduino是开源软件,这里选择是否给arduino公司赞赏,这里我们直接跳过。点击JUST DOWNLOAD4.现在完成后点击现在的文件进行安装。傻瓜式安装直接一下一步。到这里我们..._物联网开发环境的构建

爬虫1_<html class="no-js" lang="en" >-程序员宅基地

文章浏览阅读2.3k次。互联网、HTTP互联网互联网也叫因特网(Internet),是指网络与网络所串联成的庞大网络,这些网络以一组标准的网络协议族相连,连接全世界几十亿个设备,形成逻辑上的单一巨大国际网络。它由从地方到全球范围内几百万个私人的、学术界的、企业的和政府的网络所构成。通过电子、无线和光纤等一系列广泛的技术来实现。这种将计算机网络互相连接在一起的方法可称作“网络互联”,在此基础上发展出来的覆盖全世界的全球..._

js获取笔记本屏幕的分辨率以及缩放到125%工作区域的高度_js获取浏览器分辨率缩放-程序员宅基地

文章浏览阅读2.1k次。【代码】js获取笔记本屏幕的分辨率以及缩放到125%工作区域的高度。_js获取浏览器分辨率缩放