import java.math.BigDecimal; import java.math.RoundingMode; //Correspondence: cash = salary //Convention: cash >= 0 // scale(cash) = 2 (ie cash has 2 decimal places) public class Employee implements Salaried { private BigDecimal cash; public Employee() { cash = new BigDecimal("0"); cash = cash.setScale(2); } public void setSalary(BigDecimal d) { cash = d; cash = cash.setScale(2); } public void giveRaise(float raise) { BigDecimal myRaise = new BigDecimal(Double.toString(raise)); myRaise = myRaise.add(BigDecimal.ONE); cash = cash.multiply(myRaise); cash = cash.setScale(2, RoundingMode.HALF_UP); } public BigDecimal getSalary() { return cash; } }