JAVA基础篇—多态
class ColaEmployee父类
package com.cola;
public class ColaEmployee {
private String name;
private int bmonth;
public ColaEmployee(String name,int bmonth){
this.setName(name);
this.setBmonth(bmonth);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getBmonth() {
return bmonth;
}
public void setBmonth(int bmonth) {
this.bmonth = bmonth;
}
public int getSalary(int month){
if (this.getBmonth()==month) {
return ;
}
else {
return ;
}
}
public void print(){
System.out.print("信息"+"姓名"+this.getName()+" 月份"+this.getBmonth());
}
}
ColaEmployee
class SalariedEmployee
package com.cola;
public class SalariedEmployee extends ColaEmployee{
private int salary;
public SalariedEmployee(String name, int bmonth,int salary) {
super(name, bmonth);
// TODO Auto-generated constructor stub
setSalary(salary);
}
public int getSalary(int month) {
return this.salary+super.getSalary(month);
}
public void setSalary(int salary) {
this.salary = salary;
}
}
SalariedEmployee
class HourlyEmployee
package com.cola;
public class HourlyEmployee extends ColaEmployee{
private int salary;
private int hour;
public HourlyEmployee(String name,int bmonth,int salary,int hour){
super(name, bmonth);
setSalary(salary);
setHour(hour);
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
public int getHour() {
return hour;
}
public void setHour(int hour) {
this.hour = hour;
}
public int getSalary(int month) {
if(hour>){
return (int) (this.salary*+(this.hour-)*this.salary*1.5+super.getSalary(month));
} else{
return (int) (this.salary*this.hour+super.getSalary(month));
}
}
}
HourlyEmployee
class SalesEmployee
package com.cola;
public class SalesEmployee extends ColaEmployee{
private int sale;
private float commission;
public SalesEmployee(String name,int bmonth,int sale,float commission){
super(name,bmonth);
setSale(sale);
setCommission(commission);
}
public int getSale() {
return sale;
}
public void setSale(int sale) {
this.sale = sale;
}
public float getCommission() {
return commission;
}
public void setCommission(float commission) {
this.commission = commission;
}
public int getSalary(int month) {
return (int)(this.sale*this.commission+super.getSalary(month));
}
}
SalesEmployee
class Company
package com.cola;
public class Company extends ColaEmployee{
public Company(String name, int bmonth) {
super(name, bmonth);
// TODO Auto-generated constructor stub
}
public void print(){
System.out.print(this.getName()+this.getBmonth());
}
}
Company
class TestEmployee
package com.cola;
public class TestEmployee extends ColaEmployee{
public TestEmployee(String name, int bmonth) {
super(name, bmonth);
// TODO Auto-generated constructor stub
}
public static void main(String[] args) {
SalariedEmployee a=new SalariedEmployee("����",,);
a.print();
System.out.println(a.getSalary());
HourlyEmployee a1=new HourlyEmployee("����",,,);
a1.print();
System.out.println(a1.getSalary());
SalesEmployee a2=new SalesEmployee("����",,, 0.2f);
a2.print();
System.out.println(a2.getSalary());
}
}
TestEmployee
JAVA基础篇—多态的更多相关文章
- java基础篇 之 构造器内部的多态行为
java基础篇 之 构造器内部的多态行为 我们来看下下面这段代码: public class Main { public static void main(String[] args) { new ...
- 小白—职场之Java基础篇
java基础篇 java基础 目录 1.java是一种什么语言,jdk,jre,jvm三者的区别 2.java 1.5之后的三大版本 3.java跨平台及其原理 4.java 语言的特点 5.什么是字 ...
- java基础篇---I/O技术
java基础篇---I/O技术 对于任何程序设计语言而言,输入输出(I/O)系统都是比较复杂的而且还是比较核心的.在java.io.包中提供了相关的API. java中流的概念划分 流的方向: 输 ...
- 金三银四跳槽季,BAT美团滴滴java面试大纲(带答案版)之一:Java基础篇
Java基础篇: 题记:本系列文章,会尽量模拟面试现场对话情景, 用口语而非书面语 ,采用问答形式来展现.另外每一个问题都附上“延伸”,这部分内容是帮助小伙伴们更深的理解一些底层细节的补充,在面试中可 ...
- java基础篇---HTTP协议
java基础篇---HTTP协议 HTTP协议一直是自己的薄弱点,也没抽太多时间去看这方面的内容,今天兴致来了就在网上搜了下关于http协议,发现有园友写了一篇非常好的博文,博文地址:(http: ...
- java基础篇---I/O技术(三)
接上一篇java基础篇---I/O技术(二) Java对象的序列化和反序列化 什么叫对象的序列化和反序列化 要想完成对象的输入或输出,还必须依靠对象输出流(ObjectOutputStream)和对象 ...
- Java基础十一--多态
Java基础十一--多态 一.多态定义 简单说:就是一个对象对应着不同类型. 多态在代码中的体现: 父类或者接口的引用指向其子类的对象. /* 对象的多态性. class 动物 {} class 猫 ...
- Java基础之多态和泛型浅析
Java基础之多态和泛型浅析 一.前言: 楼主看了许多资料后,算是对多态和泛型有了一些浅显的理解,这里做一简单总结 二.什么是多态? 多态(Polymorphism)按字面的意思就是“多种状态”.在面 ...
- Java基础篇 - 强引用、弱引用、软引用和虚引用
Java基础篇 - 强引用.弱引用.软引用和虚引用 原创零壹技术栈 最后发布于2018-09-09 08:58:21 阅读数 4936 收藏展开前言Java执行GC判断对象是否存活有两种方式其中一种是 ...
随机推荐
- 077 Combinations 组合
给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合.例如,如果 n = 4 和 k = 2,组合如下:[ [2,4], [3,4], [2,3], [1,2], [ ...
- 057 Insert Interval 插入区间
给出一个无重叠的按照区间起始端点排序的区间列表.在列表中插入一个新的区间,你要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间).示例 1:给定区间 [1,3],[6,9],插入并合并 ...
- Spark Mllib里的分布式矩阵(行矩阵、带有行索引的行矩阵、坐标矩阵和块矩阵概念、构成)(图文详解)
不多说,直接上干货! Distributed matrix : 分布式矩阵 一般能采用分布式矩阵,说明这数据存储下来,量还是有一定的.在Spark Mllib里,提供了四种分布式矩阵存储形式,均由支 ...
- Java基于springMVC的验证码案例
``` Java验证码案例(基于springMVC方式) 验证码工具类 package com.ekyb.common.util; import java.awt.Color; import java ...
- 面向切面编程 (AOP )的理解
AOP的全称: Aspact Oriented Programming AOP的目标(作用):让我们可以“专心做事” 日志记录,事务处理,异常捕获,缓存操作. AOP原理 将复杂的需求分解出不同 ...
- 安卓下对SD卡文件的读写
为SD下的操作文件,封装了一些类: package ujs.javawritedata; import java.io.File; import java.io.FileInputStream; im ...
- POJ3252Round Numbers(数位dp)
题意 给出区间$[A, B]$,求出区间内的数转成二进制后$0$比$1$多的数的个数 $1 \leqslant A, B \leqslant 2,000,000,000$ Sol 比较zz的数位dp ...
- 一键部署Moodle开源课程管理系统
产品详情 产品介绍Moodle https://moodle.org/ 是一个开源及自由的电子学习软件平台,亦称为课程管理系统.学习管理系统或虚拟学习环境.Moodle 特色异于其他商业线上教学平台, ...
- 感觉单链表是实现BCL ICollection 的最佳方式,所有操作都能以最小的时间复杂度完成
public interface ICollection<T> : IEnumerable<T>, IEnumerable { int Count { get; }// ...
- pip和apt-get换源
pip换源 一下方法对pip和pip3同时起作用 永久换源 运行一下命令: cd ~/.pip 如果提示目录不存在的话,我们要自行创建一个,再进入目录 mkdir ~/.pip cd ~/.pip 在 ...