Çë¸÷λ¸ßÊÖ²»Áߴͽ̣¬JAVA³ÌÐòÎÊÌâ
×ܹ²Á½¸öÎļþTaxTest.javaÓëTax.java
---------------------------------------------------------------------------------------
TaxTest.java
===========================================
import javax.swing.JOptionPane;
public class TestTax{
public static void main(String[] args){
String yearString = JOptionPane.showInputDialog("Enter the year ,etc 2001 or 2002");
int year = Integer.parseInt(yearString);
Tax change = new Tax();
change.setBrackets(year);
change.setRates(year);
int[][] brackets = change.getBrackets();
double[] rates = change.getRates();
double taxableIncome = change.getTaxableIncome();
double tax = 0;
System.out.println(year + " year Ameica duty of four persons");
System.out.println("-----------------------------------------------------");
System.out.println("taxableIncome SINGLE_FILER MARRIED_JOINTLY MARRIED_SEPARATELY HEAR_OF_HOUSHOLD");
System.out.println("-----------------------------------------------------");
for(double i = taxableIncome;i <= 60000;){
System.out.println(taxableIncome );
for(int filingStatus = 0;filingStatus <= 3;filingStatus ++){
if(taxableIncome <= brackets[filingStatus][0])
tax = taxableIncome * rates[0];
else tax = brackets[filingStatus][0] * rates[0];
for(int j = 1;j < brackets[0].length;j ++){
if(taxableIncome < brackets[filingStatus][j])
tax += (brackets[filingStatus][j]-brackets[filingStatus][j-1])*rates[j];
else tax += (taxableIncome -brackets[filingStatus][j-1])*rates[j];
}
System.out.println(" " + tax);
}
taxableIncome += 1000;
System.out.println();
}
System.out.println("-----------------------------------------------------");
}
}
Tax.java
=============================================
public class Tax{
private int filingStatus = 0;
private int[][] brackets;
private double[] rates;
private double taxableIncome;
publ
Ïà¹ØÎĵµ£º
³éÏ󻯺ͼ̳йØÏµÊ¹¸ÅÄîºÍ¶¨Òå¿ÉÒÔ¸´Óã»¶à̬ÐÔʹʵÏÖºÍÓ¦ÓÿÉÒÔ¸´Óã»
¿ª±ÕÔÔò£¨Open-Closed Principle OCP£©Ò»¸öÈí¼þʵÌåÓ¦µ±¶ÔÀ©Õ¹¿ª·Å£¬¶ÔÐ޸ķâ±Õ¡£
¶Ô¿É±äÐԵķâ×°ÔÔò£¨Principle of Encapsulation of Variation£© (1)Ò»Öֱ仯ÐÔ²»ºÍÁíÒ»ÖÖ»ìºÏÔÚÒ»Æð £¨2£©Ò»ÖֿɱäÐÔ²»Ó¦É¢ÂäÔÚ´úÂëµÄºÜ¶àµØ·½¡£
ÀïÊÏ´ú»» ......
Java×ÜÓÐËüµÄǧ°ãºÃ´¦Ê¹ÄãÑ¡ÔñËü£¬µ«ÕâÐ©Ëæ±ã··Êé»òÔÚÍøÉϹäһȦ¾ÍÄÜÕÒµ½´ð°¸¡£ÔÚ±¾ÎÄÖУ¬±ÊÕß°Ñ×Ô¼ºÑ§Ï°JavaµÄһЩÇÐÉíÌå»áºÍ¹ý³Ìд³öÀ´£¬¹©³õѧÕß×ö¸ö²Î¿¼¡£ ¡¡¡¡ÎÒÔÚѧϰJavaµÄ¹ý³ÌÖÐÖ÷ÒªÎ§ÈÆÒÔϼ¸¸ö·½ÃæÀ´Ñ§Ï°£º
¡¡¡¡1£®Ê±¿ÌÌáÐÑ×Ô¼ºJavaÊÇÒ»ÖÖOOPÓïÑÔ¹¤¾ß£¬¶ø²»½ö½öÊDZàÂ룬ֻÓÐÕâÑù²ÅÄÜ×ÜÌå°ÑÎÕºÍÔËÓÃJava¡£
¡¡¡ ......
Ëæ×Å»¥ÁªÍøµÄÈÕÒæ×³´ó,ÍøÕ¾µÄpvºÍuv³ÉÏßÐÔ»òÕßÖ¸Êý±¶µÄÔö¼Ó.µ¥·þÎñÆ÷µ¥Êý¾Ý¿âÔçÒѾ²»ÄÜÂú×ãʵ¼ÊÐèÇó.±ÈÈçÏñÊ¢´ó,ÌÔ±¦ÕâÑùµÄ´óÐÍÍøÂ繫˾,¸üÊÇÈç´Ë.
¼¯Èº,Ò²¾ÍÊÇÈÃÒ»×鼯Ëã»ú·þÎñÆ÷Ðͬ¹¤×÷,´ï½â¾ö´ó²¢·¢,´óÊý¾ÝÁ¿Æ¿¾±ÎÊÌâ.µ«ÊÇÔÚȺ¼¯ÖÐ,sessionÍùÍùÊÇÒ»¸ö±È½ÈÍ·ÌÛµÄÎ ......