Tool Setup

This commit is contained in:
Mann Patel
2025-09-27 23:11:10 -06:00
parent 2fa2e0a575
commit 586db088b4
3 changed files with 194 additions and 0 deletions

44
Test/TaxApp.java Normal file
View File

@@ -0,0 +1,44 @@
package Test;
abstract class TaxCalculator {
protected double income;
public TaxCalculator(double income) {
this.income = income;
}
public abstract double calculateTax();
public double afterTaxIncome() {
return income - calculateTax();
}
}
class FlatTaxCalculator extends TaxCalculator {
private static final double RATE = 0.15;
public FlatTaxCalculator(double income) {super(income);}
public double calculateTax() {
return income * RATE;
}
}
public class TaxApp {
static class BracketTaxCalculator extends TaxCalculator {
public BracketTaxCalculator(double income) {
super(income);
}
public double calculateTax() {
if (income <= 10000) {return income * 0.10;}
else if (income <= 50000) { return (10000 * 0.10) + ((income - 10000) * 0.20);}
else { return (10000 * 0.10) + (40000 * 0.20) + ((income - 50000) * 0.30);}
}
}
public static void main(String[] args) {
double income = 60000;
TaxCalculator flat = new FlatTaxCalculator(income);
double flatTax = flat.calculateTax();
double flatAfterTax = flat.afterTaxIncome();
TaxCalculator bracket = new BracketTaxCalculator(income);
double bracketTax = bracket.calculateTax();
double bracketAfterTax = bracket.afterTaxIncome();
}
}