Java 抽象类

本文介绍了一个简单的银行存款利息计算系统,通过定义抽象基类Bank并继承实现ChinaBank和NongBank两个具体银行类来计算不同条件下的存款利息。系统考虑了存款金额是否超过20000元这一阈值,并据此调整计算方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Bank
abstract class Bank {
	protected double savedMoney; //存款
	protected int year ;			//存款年数(注意类型)
	protected double income; 		//存款利息
	protected double inRate ;
	protected double current;//存款利率
	public void setRate(double in){
		//设置存款利率
		inRate=in;
	}
	public void setcurrent(double in){
		//设置存款利率
		current=in;
	}
	public double computerIncome(){
		//计算存款利息
		income=year*inRate*savedMoney;
		return income;
	}

}


ChinaBank

public class ChinaBank extends Bank {
	private double year;
	private double current;
	public ChinaBank(){}
	public ChinaBank(double savedMoney,double year){
		this.savedMoney=savedMoney;
		this.year=year;
	}
	public void setcurrent(double in){
		//设置存款利率
		current=in;
	}
	public double computerIncome(){
		int n=(int)year;
		if(savedMoney>20000)
		    income=n*inRate*savedMoney+(n-year)*current*((n*inRate+1)*savedMoney)+200;
		else
			income=n*inRate*savedMoney+(n-year)*current*((n*inRate+1)*savedMoney);
		return  income;
	}

}


NongBank

public class NongBank extends Bank{
	private double year;
	private double current;
	public NongBank(){}
	public NongBank(double savedMoney,double year){
		this.savedMoney=savedMoney;
		this.year=year;
	}
	public void setcurrent(double in){
		//设置存款利率
		current=in;
	}
	public double computerIncome(){
		int n=(int)year;
		if(savedMoney>20000)
		    income=n*inRate*savedMoney+(n-year)*current*((n*inRate+1)*savedMoney)+300;
		else
			income=n*inRate*savedMoney+(n-year)*current*((n*inRate+1)*savedMoney);
		return  income;
	}

}


BankText

import java.util.*;
public class BankText {
	public static void main(String[] args) {		
		Scanner in=new Scanner(System.in);
		System.out.print("请输入存款年数:");
		double year=in.nextDouble();
		System.out.print("请输入存款数:");
		double savemony=in.nextDouble();
		Bank xiaoli=new ChinaBank(savemony,year);
		xiaoli.setRate(0.02);
		xiaoli.setcurrent(0.01);
		System.out.print("利息为:");
		System.out.println(xiaoli.computerIncome());
		System.out.print("请输入存款年数:");
		double year1=in.nextDouble();
		System.out.print("请输入存款数:");
		double savemony1=in.nextDouble();
		xiaoli=new NongBank(savemony1,year1);
		xiaoli.setRate(0.02);
		xiaoli.setcurrent(0.005);
		System.out.print("利息为:");
		System.out.println(xiaoli.computerIncome());
		
	}

}


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值