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(非接口 ...
随机推荐
- RT-Thread RTOS
RT-ThreadRTOS是一款来自中国的开源实时操作系统,由RT-Thread工作室的专业开发人员开发.维护. 起初RT-Thread是一个实时的内核(全抢占优先级调度,调度器时间复杂度O(1)), ...
- Jmeter-调整占用内存解决内存溢出
启动jmeter.从启动jmeter的输出就可以看到,Modify HEAP “” in the jmeter batch file -Xmx512m -Xms512m -Xms是初始内存,-X ...
- Oracle数据去重
一.完全重复数据去重方法 具体思路是,首先创建一个临时表,然后将DISTINCT之后的表数据插入到这个临时表中;然后清空原表数据;再讲临时表中的数据插入到原表中;最后删除临时表. 对于表中完全重 ...
- 面试题: 数据库 oracle数据库 已看1 意义不大 有用
Oracle数据库面试题总结 2017年04月27日 22:41:44 阅读数:9271 1.SQL语句分类 DQL(数据查询语言)select DML(数据操作语言)insert.delete.up ...
- c# 任务栏托盘图标鼠标进入MouseEnter和鼠标离开MouseLeave实现
c#的任务栏托盘图标控件NotifyIcon只有MouseMove事件,MouseMove事件刷新很快,很不好用,而且我们有时需要鼠标进入和离开的事件,但是不知道c#怎么回事,没有提供,那么就只能自己 ...
- 《深入分析Java Web技术内幕》读后感(Tomcat)
第11章 P286 Tomcat总体结构 1.service 2.server 3.组件的生命 Connector Container 1.容器的总体设计 2.Engine容器 3.Host容器 4. ...
- FZU 2057 家谱(dfs)
Problem 2057 家谱 Accept: 129 Submit: 356Time Limit: 1000 mSec Memory Limit : 32768 KB Problem ...
- char和nchar,varchar和nvarchar的区别(转载)
1) 定义: char: 固定长度,存储ANSI字符,不足的补英文半角空格. nchar: 固定长度,存储Unicode字符,不足的补英文半角空格 varchar: 可变长度, ...
- Hyperledger Fabric 替换couchDB
fabric中默认数据存储的方式是levelDB,一个key/value存储的单机数据库.除此之外还提供了另外一种存储方式:couchDB.同样也是一个K/V 数据库,对fabric而言,相比于前者, ...
- uoj#311. 【UNR #2】积劳成疾(期望dp)
传送门 果然\(dp\)题就没咱啥事儿了 设\(f_{i,j}\)为长度为\(i\)的区间,所有元素的值不超过\(j\)的总的疲劳值 如果\(j\)没有出现过,那么\(f_{i,j}=f_{i,j-1 ...