任务描述:公司要对两类人进行收入计算:老板收入=工资+股份红利;员工=工资+奖金。
设计整体要求:各个类要完成的的计算在内部完成。
1、先写空结构
package base;

public class NoInstanceOf
{

public static void main(String[] args)
{
}
}

class Employee
{
//共性:收入与工资
private double income;
private double salary;
}


class Worker extends Employee
{
//奖金
private double bonus;
}


class Boss extends Employee
{
//股份
private double stock;
}
2、设计实现
package base;

public class CalcSimple
{

public static void main(String[] args)
{
//步骤:1.创建实例2.设置相关数据3.调用计算过程4.求值
Worker worker1 = new Worker();
worker1.setSalary(1000);
worker1.setBonus(2000);
worker1.calc();
System.out.println("员工收入:"+worker1.getIncome());
Boss boss1 = new Boss();
boss1.setSalary(1000);
boss1.setStock(10000);
boss1.calc();
System.out.println("老板收入:"+boss1.getIncome());
}
}


class Employee
{
//共性:收入与工资
private double income;
private double salary;

public double getIncome()
{
return income;
}
public void setIncome(double income)
{
this.income = income;
}
public double getSalary()
{
return salary;
}
public void setSalary(double salary)
{
this.salary = salary;
}
}


class Worker extends Employee
{
//奖金
private double bonus;

public double getBonus()
{
return bonus;
}

public void setBonus(double bonus)
{
this.bonus = bonus;
}

public void calc()
{
this.setIncome(this.getSalary()+this.getBonus());
}
}


class Boss extends Employee
{
//股份
private double stock;

public double getStock()
{
return stock;
}

public void setStock(double bonus)
{
this.stock = bonus;
}

public void calc()
{
this.setIncome(this.getSalary()+this.getStock());
}
}
3、分析总结
一、设计时要注意的问题:
1.1、先画出空结构
1.2、想出调用步骤(如:)
1.3、要按Java开发常用模式进行设计,不要想简单而直接将内部组成(如收留income)设置为public。
二、优点:
2.1:直接了当,思路清楚。
2.3、适合小项目以及项目内部开发人员,其它人用要对类之间的关系了解得很清楚才能使用。

三、缺点及其它策略:
3.1、如果公司有很多人员种类:股东、总经理、项目经理、组长、员工、保安……那么每个都必须完成这种计算方法。
3.2、另一个策略是:人员只保存基本信息和基本方法,另外再建立一个计算类,专门对各业人员进行计算。
说明:出于学习目的,本系统的设计的整体要求:各个类要完成的的计算在内部完成。
本文介绍了一个简单的Java案例,用于计算不同类型员工(员工和老板)的薪资。通过继承和多态,实现了不同人员薪资构成的计算,并展示了如何组织代码以保持清晰性和可维护性。
1905

被折叠的 条评论
为什么被折叠?



