利用抽象類給一個有工資收入和稿費收入的小夥伴算稅
阿新 • • 發佈:2020-08-05
class AbstarctClass { public static void main(String[]args) { // TODO: 用抽象類給一個有工資收入和稿費收入的小夥伴算稅: Income[] incomes = new Income[] {new SalaryIncome(7500), new RoyaltyIncome(12000) }; double total = 0; // TODO: for (Income in:incomes) { total += in.getTax(); } System.out.println(total); } } /** * 計稅的抽象類 */ abstract class Income { protected double income; public Income(double income) { this.income = income; } public abstract double getTax(); } /** * 工資計稅 */ class SalaryIncome extends Income { public SalaryIncome(double income) { super(income); } @Override public double getTax() { if (this.income <= 5000) { return 0; } return (this.income - 5000) * 0.2; } } /** * 稿費計稅 */ class RoyaltyIncome extends Income { public RoyaltyIncome(double income) { super(income); } @Override public double getTax() { return this.income * 0.1; } }