public class tax2 { public static void main(String[] args) { Income2 a = new Salari(20); Income2 b = new Remuneration(200); Income2 c = new Income2(3000) { @Override public double tax() { return Income/3; } }; System.out.println(allTax(a, b, c)); }
public static double allTax(Income2... incomes) { double tax = 0; for (Income2 income:incomes) { tax += income.tax(); } return tax; } }
abstract class Income2 { protected final double Income; public Income2(double income) { this.Income = income; } public abstract double tax(); }
class Salari extends Income2 { public Salari(double income) { super(income); }
@Override public double tax() { return this.Income * 0.1; } }
class Remuneration extends Income2 { public Remuneration(double income) { super(income); }
@Override public double tax() { return this.Income * 0.01; } }
Sign in to make a reply
_崔先生_
public class tax2 {
public static void main(String[] args) {
Income2 a = new Salari(20);
Income2 b = new Remuneration(200);
Income2 c = new Income2(3000) {
@Override
public double tax() {
return Income/3;
}
};
System.out.println(allTax(a, b, c));
}
public static double allTax(Income2... incomes) {
double tax = 0;
for (Income2 income:incomes) {
tax += income.tax();
}
return tax;
}
}
abstract class Income2 {
protected final double Income;
public Income2(double income) {
this.Income = income;
}
public abstract double tax();
}
class Salari extends Income2 {
public Salari(double income) {
super(income);
}
@Override
public double tax() {
return this.Income * 0.1;
}
}
class Remuneration extends Income2 {
public Remuneration(double income) {
super(income);
}
@Override
public double tax() {
return this.Income * 0.01;
}
}