Java--利用接口以及抽象类解决银行问题。

/*   
02.*烟台大学计算机学院学生   
03.*All right reserved.   
04.*文件名称*烟台大学计算机学院学生   
05.*All right reserved.   
06.*文件名称:抽象基类   
07.*作者:王洪海   
08.*完成日期:2014年11月4日   
09.*版本号:v1.0   
10.*对任务及求解方法的描述部分:利用接口以及抽象类解决银行问题  
11.*我的程序:   
12.*/ 

package whh;

public abstract class Bank {
	abstract double Income();
}

 interface Commision {
	double ticheng();   //存款的金额不同,所获得的提成利率不同。
}
 
 class ChinaBank extends Bank implements Commision{
	int  savedMoney;   //存款     
    int  year;         //存款年数(注意类型)     
    double  income;    //存款利息     
    double  inRate;   //存款利率 
    double commision;
    
    public ChinaBank(){
    	
    }
    public ChinaBank(int sm,int y,double r){
	savedMoney=sm;
	year=y;
	inRate=r;
	}
    
    public double Income(){
    	return savedMoney*year*inRate;
    }
    public double ticheng(){
    	if(savedMoney>50000)
    		commision=0.005;
    	else
    		commision=0.003;
    	return (savedMoney*commision);
    }
	public int getSavedMoney() {
		return savedMoney;
	}
	public void setSavedMoney(int savedMoney) {
		this.savedMoney = savedMoney;
	}
	public int getYear() {
		return year;
	}
	public void setYear(int year) {
		this.year = year;
	}
	public double getInRate() {
		return inRate;
	}
	public void setInRate(double inRate) {
		this.inRate = inRate;
	}
    
    
}
 
 class ABank extends Bank{
	    int  savedMoney;   //存款     
	    double  year;         //存款年数(注意类型)     
	    double  inRate;   //存款利率 
	    double hRate;  //活期利率
	    
	    public ABank(){
	    	
	    }
	    public ABank(int sm,double y,double r,double h){
	    	savedMoney=sm;
	    	year=y;
	    	inRate=r;
	    	hRate=h;
	    }
	    
	    public double Income(){
	    	return (year-(int)year)*hRate*savedMoney+(int)year*inRate*savedMoney;
	    }
		public int getSavedMoney() {
			return savedMoney;
		}
		public void setSavedMoney(int savedMoney) {
			this.savedMoney = savedMoney;
		}
		public double getYear() {
			return year;
		}
		public void setYear(double year) {
			this.year = year;
		}
		public double getInRate() {
			return inRate;
		}
		public void setInRate(double inRate) {
			this.inRate = inRate;
		}
		public double gethRate() {
			return hRate;
		}
		public void sethRate(double hRate) {
			this.hRate = hRate;
		}
	    
	    
 }
 
 class Test{
	 public static void main(String []args){
		 ChinaBank cb = new ChinaBank(60000,5,0.01);
		 System.out.println("中国银行存"+cb.getSavedMoney()+"元的提成为:"+cb.ticheng());
		 System.out.println("中国银行存"+cb.getSavedMoney()+"元钱,"+cb.getYear()+"年的利息为:"+cb.Income());
		 System.out.println("       ");
		 ABank ab = new ABank(60000,5.2,0.01,0.008);
		 System.out.println("A银行存"+ab.getSavedMoney()+"元钱,"+ab.getYear()+"年的利息为:"+ab.Income());
	 }

 }


运行结果,如下图:

猜你喜欢

转载自blog.csdn.net/u012369302/article/details/40787911