java 员工类算工资_用java设计一个员工类,可以计算工资个人所得税
用java设计一个员工类,可以计算工资个人所得税
1. 背景
老师在课上布置了几道java编程题,此为其中之一
2. 题目内容
设计一个员工类。该员工具有下列私有属性:编号,姓名,基本工资,奖金 提供有参构造函数:Employee(Strng ID,String name), 提供上述私有属性的读写函数.
提供计算个人所得税的方法:
工资个税的计算公式为:应纳税额=(工资薪金所得 -“五险一金”-扣除数)×适用税率-速算扣除数
自己在实际代码中对上述问题做了一些改进
3. 具体代码与解释
package Two;
/**
* @author Kun Sun
* @Date: 2013.10.15
*/
public class Employee { // 雇员类
private String ID; // ID
private String name; // 姓名
private int salary; // 工资薪金所得
private int insureHome; // “五险一金”数额
private int deduct; // 扣除数额
Employee(){
}
Employee(String ID,String name){ // 带参数的构造方法
this.ID = ID;
this.name = name;
}
Employee(String ID,String name,int salary,int insureHome,int deduct){ // 带参数的构造方法
this.ID = ID;
this.name = name;
this.salary = salary;
this.insureHome = insureHome;
this.deduct = deduct;
}
public String getID() {
return ID;
}
public String getName() {
return name;
}
public int getSalary() {
return salary;
}
public int getInsureHome() {
return insureHome;
}
public int getDeduct() {
return deduct;
}
public void setID(String iD) {
ID = iD;
}
public void setName(String name) {
this.name = name;
}
public void setSalary(int salary) {
this.salary = salary;
}
public void setInsureHome(int insureHome) {
this.insureHome = insureHome;
}
public void setDeduct(int deduct) {
this.deduct = deduct;
}
public void selfValue(){ // 个人所得税具体计算
double sefValue;
if(salary>=0 && salary<1500){
sefValue = (double)(salary-insureHome-deduct)*0.03 - 0;
}else if(salary>=1500 && salary<4500){
sefValue = (double)(salary-insureHome-deduct)*0.1 - 105;
}else if(salary>=4500 && salary<9000){
sefValue = (double)(salary-insureHome-deduct)*0.2 - 555;
}else if(salary>=9000 && salary<35000){
sefValue = (double)(salary-insureHome-deduct)*0.25 - 1005;
}else if(salary>=35000 && salary<55000){
sefValue = (double)(salary-insureHome-deduct)*0.30 - 2755;
}else if(salary>=55000 && salary<80000){
sefValue = (double)(salary-insureHome-deduct)*0.35 - 5505;
}else{
sefValue = (double)(salary-insureHome-deduct)*0.45 - 13505;
}
System.out.println(sefValue);
}
}
package Two;
/**
* @author Kun Sun
* @Date: 2013.10.15
*/
public class MainClass { // 用于测试雇员类
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("第一种调用方法:");
Employee emp = new Employee("1001","Sun");
emp.setSalary(12345);
emp.setInsureHome(890);
emp.setDeduct(55);
System.out.println("编号为"+emp.getID()+",姓名是"+emp.getName()+" 的应纳税额是:");
emp.selfValue();
System.out.println("------------------------\n第二种调用方法:");
Employee emp2 = new Employee("1001","Sun",12345,890,55);
System.out.println("编号为"+emp2.getID()+",姓名是"+emp2.getName()+" 的应纳税额是:");
emp2.selfValue();
System.out.println("------------------------\n第二种调用方法:");
Employee emp3 = new Employee();
emp3.setID("1001");
emp3.setName("Sun");
emp3.setSalary(12345);
emp3.setInsureHome(890);
emp3.setDeduct(55);
System.out.println("编号为"+emp3.getID()+",姓名是"+emp3.getName()+" 的应纳税额是:");
emp3.selfValue();
}
}
4. 测试运行结果截图
java 员工类算工资_用java设计一个员工类,可以计算工资个人所得税相关推荐
- java box类定义三变量_01.类的成员变量:\n设计一个立方体类Box,定义三个属性,分别是长,宽,高。定义二个方法,分别计...
01.类的成员变量:\n设计一个立方体类Box,定义三个属性,分别是长,宽,高.定义二个方法,分别计算并输出立方体的体积和表面积 答:java.util.Scanner; public class B ...
- java string改变的影响_为什么Java的string类要设成immutable(不可变的)
最流行的Java面试题之一就是:什么是不可变对象(immutable object),不可变对象有什么好处,在什么情况下应该用,或者更具体一些,Java的String类为什么要设成immutable类 ...
- java设计一个user类_关于JAVA设计一个用户类
关于JAVA设计一个用户类 关注:152 答案:2 mip版 解决时间 2021-02-02 05:51 提问者安分守己的小青春 2021-02-02 02:23 设计一个用户类,该类有用户编号. ...
- java一个项目只有一个主类吗_组成Java Application的若干类中,有且仅有一个主类,只有主类中含有主方main()。...
组成Java Application的若干类中,有且仅有一个主类,只有主类中含有主方main(). A:对 B:错 正确答案:对 解析: 组成Java Application的若干类中,有且仅有一个主 ...
- java中手动装入新类到类装饰器_关于java:抽象装饰器类中的功能而不是装饰器...
我目前正在阅读<Head First Design Patterns>一书,在"Decorator"一章中有以下示例: 在书中,conditionmentDecorat ...
- java设计一个立方体类box_实例1: 设计一个立方体类Box,定义三个属性,分别是长,宽,高。定义二个方法,分别计算并输出立方体的体积和表面积。_学小易找答案...
[填空题]表达式 list(filter(lambda x:x>2, [0,1,2,3,0,0])) 的值为 _________ . [填空题]表达式 len(' 中国 '.encode('ut ...
- java定义一个日期类 包括年 月 日_【说明】 设计一个日期类Date包括年、月、日等私有数据成员。要求实现日期..._考试资料网...
填空题[说明] 设计一个日期类Date包括年.月.日等私有数据成员.要求实现日期的基本运算,如某日期加上天数.某日期减去天数.两日期相差的天数等. 在Date类中设计如下重载运算符函数: Date o ...
- java形状类_[转载]JAVA 设计一个形状类Shape 求周长和面积
设计一个形状类Shape,方法:求周长和求面积 形状类的子类:Rect(矩形),Circle(圆形) Rect类的子类:Square(正方形) 不同的子类会有不同的计算周长和面积的方法 创建三个不同的 ...
- 实现一个名为Person的类和它的子类Employee,Manager是Employee的子类,设计一个方法add用于涨工资,普通员工一次能涨10%,经理涨20%.
1.实现一个名为Person的类和它的子类Employee,Manager是Employee的子类,设计一个方法add用于涨工资,普通员工一次能涨10%,经理涨20%,具体要求如下: (1)Perso ...
最新文章
- 广播等风暴的解决办法
- 前端模板引擎Thymeleaf快速入门
- 【PP主数据】工作中心介绍
- IBATISNETNET 1.3 开发指南系列文章
- (Z)托尼?施瓦茨:六大关键几乎可以改变一切
- list python 访问 键值对_学完Python,我决定熬夜整理这篇总结...
- android地图定位到海洋,GPS定位技术进行高精度海洋定位的应用
- C语言警告warning C4018: '' : signed/unsigned mismatch
- 计算机专业考研学习,计算机专业考研133分复习经验谈
- channelinboundhandler中都包含了哪一类的方法_标准气体的分类类别与相关气体配置方式方法...
- 用python的turtle库画圣诞树
- 教育部 计算机类专业代码,全国本科专业代码查询
- 辉煌十载!BDTC 2017 中国大数据技术大会在京盛大召开
- 【支付宝】支付宝ISV申请方法
- 增值税相关软件基本常识
- C# XmlDocument.Save文件操作System.IO.IOException:The process cannot access the file because it is being
- Arduino学习之第一篇
- 魔兽争霸无法在这个计算机,W7系统魔兽争霸3不能初始化DirectX怎么办
- 4.25 C语言练习(然后是几点:根据起始时间和流逝的时间计算出终止时间。计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。)
- LVM 的自定义报告(pvs vgs lvs各参数详解)
热门文章
- 面对焦虑我们怎么办 - 凭什么我们要去焦虑!
- 群体智能自主作业智慧农场项目启动及实施方案论证会议
- 终端针对2G/3G退网场景处理方式介绍
- 网页中图片常见格式及其特点
- Visual Studio 2019安装中出现的问题(超详细)
- 尝试写java小游戏(捕鱼达人)
- VS2010+.net4.0仿照苹果手机上的消除之星写了一个电脑版的功能简单(二)
- 港口AI叉车自动化辅助驾驶系统
- Free BASIC 试用(从Qbasic发展上来,现在支持64位程序开发)
- 华为无线网卡无服务器,华为无线网络AC下的有线可以上网,无线无法ping通网关,无法上网的解决办法...