用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设计一个员工类,可以计算工资个人所得税相关推荐

  1. java box类定义三变量_01.类的成员变量:\n设计一个立方体类Box,定义三个属性,分别是长,宽,高。定义二个方法,分别计...

    01.类的成员变量:\n设计一个立方体类Box,定义三个属性,分别是长,宽,高.定义二个方法,分别计算并输出立方体的体积和表面积 答:java.util.Scanner; public class B ...

  2. java string改变的影响_为什么Java的string类要设成immutable(不可变的)

    最流行的Java面试题之一就是:什么是不可变对象(immutable object),不可变对象有什么好处,在什么情况下应该用,或者更具体一些,Java的String类为什么要设成immutable类 ...

  3. java设计一个user类_关于JAVA设计一个用户类

    关于JAVA设计一个用户类 关注:152  答案:2  mip版 解决时间 2021-02-02 05:51 提问者安分守己的小青春 2021-02-02 02:23 设计一个用户类,该类有用户编号. ...

  4. java一个项目只有一个主类吗_组成Java Application的若干类中,有且仅有一个主类,只有主类中含有主方main()。...

    组成Java Application的若干类中,有且仅有一个主类,只有主类中含有主方main(). A:对 B:错 正确答案:对 解析: 组成Java Application的若干类中,有且仅有一个主 ...

  5. java中手动装入新类到类装饰器_关于java:抽象装饰器类中的功能而不是装饰器...

    我目前正在阅读<Head First Design Patterns>一书,在"Decorator"一章中有以下示例: 在书中,conditionmentDecorat ...

  6. java设计一个立方体类box_实例1: 设计一个立方体类Box,定义三个属性,分别是长,宽,高。定义二个方法,分别计算并输出立方体的体积和表面积。_学小易找答案...

    [填空题]表达式 list(filter(lambda x:x>2, [0,1,2,3,0,0])) 的值为 _________ . [填空题]表达式 len(' 中国 '.encode('ut ...

  7. java定义一个日期类 包括年 月 日_【说明】 设计一个日期类Date包括年、月、日等私有数据成员。要求实现日期..._考试资料网...

    填空题[说明] 设计一个日期类Date包括年.月.日等私有数据成员.要求实现日期的基本运算,如某日期加上天数.某日期减去天数.两日期相差的天数等. 在Date类中设计如下重载运算符函数: Date o ...

  8. java形状类_[转载]JAVA 设计一个形状类Shape 求周长和面积

    设计一个形状类Shape,方法:求周长和求面积 形状类的子类:Rect(矩形),Circle(圆形) Rect类的子类:Square(正方形) 不同的子类会有不同的计算周长和面积的方法 创建三个不同的 ...

  9. 实现一个名为Person的类和它的子类Employee,Manager是Employee的子类,设计一个方法add用于涨工资,普通员工一次能涨10%,经理涨20%.

    1.实现一个名为Person的类和它的子类Employee,Manager是Employee的子类,设计一个方法add用于涨工资,普通员工一次能涨10%,经理涨20%,具体要求如下: (1)Perso ...

最新文章

  1. 广播等风暴的解决办法
  2. 前端模板引擎Thymeleaf快速入门
  3. 【PP主数据】工作中心介绍
  4. IBATISNETNET 1.3 开发指南系列文章
  5. (Z)托尼?施瓦茨:六大关键几乎可以改变一切
  6. list python 访问 键值对_学完Python,我决定熬夜整理这篇总结...
  7. android地图定位到海洋,GPS定位技术进行高精度海洋定位的应用
  8. C语言警告warning C4018: '' : signed/unsigned mismatch
  9. 计算机专业考研学习,计算机专业考研133分复习经验谈
  10. channelinboundhandler中都包含了哪一类的方法_标准气体的分类类别与相关气体配置方式方法...
  11. 用python的turtle库画圣诞树
  12. 教育部 计算机类专业代码,全国本科专业代码查询
  13. 辉煌十载!BDTC 2017 中国大数据技术大会在京盛大召开
  14. 【支付宝】支付宝ISV申请方法
  15. 增值税相关软件基本常识
  16. C# XmlDocument.Save文件操作System.IO.IOException:The process cannot access the file because it is being
  17. Arduino学习之第一篇
  18. 魔兽争霸无法在这个计算机,W7系统魔兽争霸3不能初始化DirectX怎么办
  19. 4.25 C语言练习(然后是几点:根据起始时间和流逝的时间计算出终止时间。计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。)
  20. LVM 的自定义报告(pvs vgs lvs各参数详解)

热门文章

  1. 面对焦虑我们怎么办 - 凭什么我们要去焦虑!
  2. 群体智能自主作业智慧农场项目启动及实施方案论证会议
  3. 终端针对2G/3G退网场景处理方式介绍
  4. 网页中图片常见格式及其特点
  5. Visual Studio 2019安装中出现的问题(超详细)
  6. 尝试写java小游戏(捕鱼达人)
  7. VS2010+.net4.0仿照苹果手机上的消除之星写了一个电脑版的功能简单(二)
  8. 港口AI叉车自动化辅助驾驶系统
  9. Free BASIC 试用(从Qbasic发展上来,现在支持64位程序开发)
  10. 华为无线网卡无服务器,华为无线网络AC下的有线可以上网,无线无法ping通网关,无法上网的解决办法...