JAVA 员工管理系统(用抽象类实现),简易版。
package Demo513;
/*
定义一个Employee类,该类包含:
private 成员变量name,number,birthday,其中birthday为MyDate类的对象;
abstract方法earnings():toString()方法输出对象的name,number和birt
*/ public abstract class Employee {
private String name ;
private int number ;
private MyDate birthday; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getNumber() {
return number;
} public void setNumber(int number) {
this.number = number;
} public MyDate getBirthday() {
return birthday;
} public void setBirthday(MyDate birthday) {
this.birthday = birthday;
} public Employee(String name, int number, MyDate birthday) {
super();
this.name = name;
this.number = number;
this.birthday = birthday;
} public abstract double earnings(); @Override
public String toString() {
return "name="+name+",number"+number+",birthday="
+birthday.toString()+"]";
}
}
package Demo513;
/*
MyDate类包括:
private成员变量month,day,year;
toDateString()方法返回日期对应的字符串:xxxx年xx月xx日
*/
public class MyDate {
private int year;
private int month;
private int day; public MyDate(int year, int month, int day) {
this.year = year;
this.month = month;
this.day = day;
}
public String toDateString(){
return year + "年"+month+"月"+day+"日";
} public int getYear() {
return year;
} public void setYear(int year) {
this.year = year;
} public int getMonth() {
return month;
} public void setMonth(int month) {
this.month = month;
} public int getDay() {
return day;
} public void setDay(int day) {
this.day = day;
}
}
package Demo513;
/*
定义 SalariedEmployee类继承Employee类,实现按月计算工资的员工处理。
private成员变量monthlySalary;
实现父类的抽象方法earnings(),该方法返回monthSalary值,toString()方法输出员工类型信息
及员工的name,number,birthday。
*/
public class SalariedEmployee extends Employee{
private double monthlySalary;//月工资 public SalariedEmployee(String name,int number,MyDate birthdat,double Salary) {
super(name,number,birthdat);
this.monthlySalary = monthlySalary;
} public double earnings(){
return monthlySalary;
} @Override
public String toString() {
return "SalariedEmployee{"+super.toString() +
"monthlySalary=" + monthlySalary +
'}';
}
}
package Demo513;
/*
定义 SalariedEmployee类继承Employee类,实现按月计算工资的员工处理。
private成员变量monthlySalary;
实现父类的抽象方法earnings(),该方法返回monthSalary值,toString()方法输出员工类型信息
及员工的name,number,birthday。
*/
public class SalariedEmployee extends Employee{
private double monthlySalary;//月工资 public SalariedEmployee(String name,int number,MyDate birthdat,double Salary) {
super(name,number,birthdat);
this.monthlySalary = monthlySalary;
} public double earnings(){
return monthlySalary;
} @Override
public String toString() {
return "SalariedEmployee{"+super.toString() +
"monthlySalary=" + monthlySalary +
'}';
}
}
package Demo513;
/*
定义payrollSystem类,创建Employee变量数组并初始化,该数组存放各类雇员对象的引用。
利用循环结构遍历数组元素。输出各个对象的类型,name,number,birthda,以及对象生日。
当键盘输入本月月份值是,如果本月是某个Employee对象的生日,还要输出增加工资信息。 */ import java.util.Scanner; public class PayrollSystem {
public static void main(String[] args) {
Employee[] emp = new Employee[2];
System.out.println();
emp[0] = new SalariedEmployee("noo", 1001, new MyDate(2000, 9, 16), 4000);
emp[1] = new SalariedEmployee("hjj", 1002, new MyDate(2000, 12, 31), 5000);
Scanner scanner=new Scanner(System.in);
System.out.println("请输入本月的月份:");
int month =scanner.nextInt(); for (int i = 0; i < emp.length; i++) {
if(month==emp[i].getBirthday().getMonth()){
System.out.println("加工资100");
}
System.out.println(emp[i]);
} }
}
JAVA 员工管理系统(用抽象类实现),简易版。的更多相关文章
- Java与Scala的两种简易版连接池
Java版简易版连接池: import java.sql.Connection; import java.sql.DriverManager; import java.util.LinkedList; ...
- python员工管理系统(基础版)
各位小伙伴们大家好,最近自学python已经差不多把基础学完了,现在运用这些基础知识写了一个简单版本的员工管理系统 因为在大学里我是学过java的,所以,当有了一定的基础和熏陶外,真心觉得python ...
- 学生管理系统(SSM简易版)总结
之前用 Servlet + JSP 实现了一个简易版的学生管理系统,在学习了 SSM 框架之后,我们来对之前写过的项目重构一下! 技术准备 为了完成这个项目,需要掌握如下技术: Java 基础知识 前 ...
- 简易版CMS后台管理系统开发流程
目录 简易版CMS后台管理系统开发流程 MVC5+EF6 简易版CMS(非接口) 第一章:新建项目 MVC5+EF6 简易版CMS(非接口) 第二章:建数据模型 MVC5+EF6 简易版CMS(非接口 ...
- 基于SSM实现的简易员工管理系统(网站上线篇)
经历无数苦难,好不容易,网站终于上线了.=.=内牛满面ing.chengmingwei.top就是本员工管理系统的主页啦.是的,很简陋,但是毕竟是第一次嘛,所以慢慢来嘛. 如上次所说的(网站简介,见: ...
- 基于SSM实现的简易员工管理系统
之前自学完了JAVA基础,一直以来也没有做什么好玩的项目,最近暑假,时间上比较空闲,所以又学习了一下最近在企业实际应用中比较流行的SSM框架,以此为基础,通过网络课程,学习编写了一个基于SSM实现的M ...
- Java普通员工管理系统
login GUI界面(登录) package 普通员工管理系统; import java.awt.event.ActionEvent; import java.awt.event.ActionLis ...
- Java 语言实现简易版扫码登录
基本介绍 相信大家对二维码都不陌生,生活中到处充斥着扫码登录的场景,如登录网页版微信.支付宝等.最近学习了一下扫码登录的原理,感觉蛮有趣的,于是自己实现了一个简易版扫码登录的 Demo,以此记录一下学 ...
- MVC5+EF6 简易版CMS(非接口) 第三章:数据存储和业务处理
目录 简易版CMS后台管理系统开发流程 MVC5+EF6 简易版CMS(非接口) 第一章:新建项目 MVC5+EF6 简易版CMS(非接口) 第二章:建数据模型 MVC5+EF6 简易版CMS(非接口 ...
随机推荐
- bzoj 2251: 外星联络 后缀Trie
题目大意 http://www.lydsy.com/JudgeOnline/problem.php?id=2251 题解 本来以为这道题应该从01序列的性质入手 结果就想歪了 等自己跳出了01序列这个 ...
- 消息队列:快速上手ActiveMQ消息队列的JMS方式使用(两种模式:Topic和Queue的消息推送和订阅)
1.实现功能 希望使用一套API,实现两种模式下的消息发送和接收功能,方便业务程序调用 1.发送Topic 2.发送Queue 3.接收Topic 4.接收Queue 2.接口设计 根据功能设计公共调 ...
- Poj_1011_Sticks(剪枝)
一.Description 乔治拿来一组等长的木棒,将它们随机地砍断,使得每一节木棍的长度都不超过50个长度单位.然后他又想把这些木棍恢复到为裁截前的状态,但忘记了初始时有多少木棒以及木棒的初始长度. ...
- ceph安装对象网关
1.概述 安装3个网关节点分别是:controller-03.controller-04和controller-05,使用ceph gw自带的Civetweb提供服务,前端使用nginx作为前端代理. ...
- 在MongoDB中修改数据类型
引言 本文主要讲解Mongodb的类型转换.包括:string转double, string转int, string转Date. 0. 出现类型不一致的原因 ES导入数据到Mongo后,会出现类型统一 ...
- linux 下定位程序假死
ps -ef | grep 程序名称 pstack 程序的进程ID
- centos6.5安装gmime-2.6
安装gmime库所需要的依赖库: 1 libffi库安装 简介:glib安装时依赖的库 解压: tar xf libffi-3.0.0.tar.gz 进入目录: cd libffi-3.0.0 安装: ...
- JQuery中查找父元素,子元素,追加元素,插入元素和删除元素 及其他常用方法
Jquery之所以强大,和其在获取对象时使用与css选择器兼容的语法有很大关系.而且它还兼容了CSS3的选择器,而且多出了不少. 所以jQuery的选择器也就变得很多很强大.就最基本的有以下四个: $ ...
- 交互原型设计软件axure rp学习之路(一)
开始学习之前,请一定要明白:Axure是个极其极其极其简单的软件.因为你所做的就是拖部件,打字,拖部件,打字,最多加个对齐.如果你能把axure当作word或者ppt来用,那你就学会了axure. A ...
- MFC——4个基本类中的成员函数介绍
09121852 杜军 机械设计及理论 1. CMainFrame ActivateFrame使框架对用户可视并可用 CalcWindowRect每当主框架窗口的客户区尺寸发生变化或控制条的位置发生变 ...