Discuss / Java / 将InCome定义一个的接口,baseIncome实现字段方法,RoyaltyIncome、SalaryIncome继承接口实现,这种思路

将InCome定义一个的接口,baseIncome实现字段方法,RoyaltyIncome、SalaryIncome继承接口实现,这种思路

Topic source

/**

 * 定义接口Income

 */

public interface Income {

// TODO

public double getTax();

}

/*

定义接口实现类,提供income字段和重写getTax方法

*/

public class BaseIncome implements Income{

protected double income;

public BaseIncome(double income) {

this.income = income;

}

@Override

public double getTax() {

// TODO Auto-generated method stub

return income * 0.1;

}

}

/**

定义继承接口实现类,重写定义实现RoyaltyIncome 税率方法。

 * 稿费收入税率是20%

 */

public class RoyaltyIncome extends BaseIncome{

public RoyaltyIncome(double income) {

super(income);

}

@Override

public double getTax() {

// TODO Auto-generated method stub

return income*0.2;

}

}

/**

定义SalaryIncome 继承接口实现类,重写实现SalaryIncome 税率方法

 * 税率是20%

 */

public class SalaryIncome extends BaseIncome{

public SalaryIncome(double income) {

super(income);

}

@Override

public double getTax() {

// TODO Auto-generated method stub

if (income<5000) {

return 0;

}

return income*0.2;

}

}


  • 1

Reply