0 0

一个Java语言编写的银行账户问题5

大家好,

      这是我第一次来到这个论坛,我是一个Java语言的初学者,目前正在入门阶段。我的老师布置了一道题目给我们,要求我们写出一个银行账户的程序,程序里说明银行账户有两个子类,一个是储蓄账户(SavingAccount),另一个是支票账户(CheckingAccount)。然后对于不同类型的账户,有不同的利率。

     我根据要求,写出了下列的四个Java文件,分别是Account, SavingAccount, CheckingAccount, AccountDemo.

     Account.java

 

package bankaccounts;

public abstract class Account {
	private String idCard;// idCard number
	private double balance;// balance

	public Account(String idCard, double balance) {
		this.idCard = idCard;
		this.balance = balance;
	}
	
	public String getIdCard() {
		return idCard;
	}

	public void setIdCard(String idCard) {
		this.idCard = idCard;
	}

	public double getBalance() {
		return balance;
	}

	public void setBalance(double balance) {
		this.balance = balance;
	}

	
	/**
	 * The method of getting interests
	 * @return
	 */
	public abstract double getInterest();
}

     SavingAccount.java

package bankaccounts;


  public class SavingAccount extends Account{
	  public SavingAccount(String name, double balance){
		  super(name,balance); 
  }
  
  public double getInterest(){
	  return getBalance()*0.0036;
  }
  }

    CheckingAccount.java

 

package bankaccounts;


	public class CheckingAccount extends Account{
		double rate = 0.05;
		public CheckingAccount (String idCard, double balance){
			super(idCard,balance);
		}
		public double getInterest(){
			double interest = 0;
			if (getBalance()>=0&&getBalance()<=20000){
				interest = getBalance()*0.0036;
				}
			else if (getBalance()>20000&&getBalance()<=40000){
				interest = getBalance()*0.0037;
			}
			else if(getBalance()>40000&&getBalance()<=80000){
				interest = getBalance()*0.0038;
			}
			else {
				interest = getBalance()*0.0039;
			}
		
		return interest;
	}

}

    AccountDemo.java

 

package bankaccounts;

import java.util.Scanner;

public class AccountDemo {
	public static void main (String []args){
		
		
		System.out.println("账户的名称是:");
		Scanner console = new Scanner(System.in);
		String name = console.nextLine();
		System.out.println("账户余额是:");
		double b = console.nextInt();
		getInterest(b);
		
	}
	public static double getInterest(double b){
		
		System.out.println("该支票账户的利息是:"+getInterest(b));
		 return b;
		}
	
}
 

     我在eclipse里运行了一下这个程序,发现错误如下:错误见图片。请教高手错误在哪里?应该如何改正?

 

2012年8月13日 20:52
  • 大小: 38.5 KB

2个答案 按时间排序 按投票排序

0 0

这孩子,还是不要搞程序猿了,不适合你

2012年8月16日 14:08
0 0

那是因为

public static double getInterest(double b){  
          
        System.out.println("该支票账户的利息是:"+getInterest(b));  
         return b;  
        }  

这里面的 System.out.println("该支票账户的利息是:"+getInterest(b));  形成循环调用了,所以出现StackOverflow

2012年8月15日 09:26

相关推荐

    java语言模拟银行账户功能

    从给定的文件信息来看,这段Java代码模拟了一个简化的银行账户系统,主要涉及了基本的用户登录验证、存款、取款以及查询余额等功能。下面将详细解析这段代码中的关键知识点。 ### 用户登录验证 在代码中,首先通过...

    用JAVA写的银行账户系统

    在本文中,我们将深入探讨如何使用Java编程语言构建一个银行账户系统,这通常涉及到ATM机的功能实现。这个系统能够支持开户、销户、转账、支取、查询余额、挂失以及修改密码等一系列操作,这些都是银行日常服务的...

    银行账户管理 JAVA

    在银行账户管理系统中,Java语言因其稳定性和丰富的库支持,成为了开发此类应用的首选。本系统的核心目标是实现对银行账户的有效管理,包括创建账户、修改账户信息、存款与取款操作以及删除账户等基本功能。下面将...

    基于Java的银行账户管理系统

    为此,《基于Java的银行账户管理系统》项目旨在通过运用Java语言及相关技术,构建一个高效、稳定的银行账户管理系统,以实现对银行账户信息的有效管理和监控。 - **研究意义**:此系统能够帮助银行工作人员提高工作...

    Java + MySQL银行管理系统

    本项目以“Java + MySQL”为技术栈,构建了一个功能完善的银行管理系统,旨在实现银行的基本业务操作以及后台的用户和业务管理。下面将详细阐述这个系统的核心技术和实现原理。 首先,Java作为后端开发的主要语言,...

    java 编写的银行管理模拟系统

    这个迷你系统可能包括了用户交互、账户管理、交易处理等核心功能,为用户提供了一个虚拟的银行环境来体验和理解银行操作流程。下面将详细讨论Java在构建银行管理系统中的应用及其相关知识点。 1. **Java基础**:...

    Java实现模拟银行储蓄系统

    在本项目中,我们关注的是使用Java编程语言构建一个模拟银行储蓄系统。这个系统与Microsoft SQL Server 2000数据库进行交互,采用JDBC(Java Database Connectivity)作为数据库连接方式。下面将详细介绍这个系统...

    java银行账户管理系统

    《Java银行账户管理系统详解》 Java银行账户管理系统是一款...综上,Java银行账户管理系统是一个综合性的软件工程实例,涵盖了从基础编程到高级应用的诸多Java知识点,对于学习和提升Java开发技能具有很高的实践价值。

    JAVA银行账户

    这个项目虽然简单,但对于初学者来说,它是学习Java语言、数据库操作和软件设计原理的一个理想起点。通过实践,可以加深对这些概念的理解,并提升编程技能。同时,项目也可以作为进一步开发的基础,比如添加用户认证...

    java编写的银行设备管理系统

    首先,我们要理解Java语言在银行系统开发中的优势。Java以其跨平台性、稳定性和安全性被广泛应用于金融行业的软件开发。它提供的面向对象编程特性使得代码结构清晰,易于维护,同时JVM(Java虚拟机)保证了程序的...

    银行账户管理系统(java程序编写)

    综上所述,"银行账户管理系统(Java程序编写)"是一个集Java编程、数据库操作、并发控制、安全设计和软件测试等多方面知识于一体的综合性项目。通过实际操作,开发者不仅能提升编程技能,还能深入了解银行系统的运作...

    银行账户管理系统(jsp+java+sqlserver+strut+servlet)

    【银行账户管理系统】是一个基于Web的应用程序,使用了多种技术来实现对银行账户的管理和操作。这个系统的核心架构包括JSP、Java、SQL Server数据库、Struts框架以及Servlet。下面将详细阐述这些技术及其在系统中的...

    java写的银行存取款系统代码

    Java编写的银行存取款系统是一个综合性的项目,它涵盖了Java编程语言以及JSP(JavaServer Pages)技术的核心概念和应用。在这个系统中,开发者利用Java的强大功能来实现银行账户的管理,包括存款、取款、查询余额等...

    java招商银行接口文档,源码

    1. **Java编程语言**:Java是一种广泛使用的面向对象的编程语言,以其“一次编写,到处运行”的特性闻名。它拥有丰富的类库和强大的社区支持,使得开发各种应用,包括金融服务系统,变得更为便捷。 2. **招商银行...

    java银行帐户管理操作系统

    用JAVA语言编写的银行帐户管理操作系统,有良好的用户界面和全面的功能。

    基于Java语言实现模拟银行存取款业务系统.zip

    资源包含文件:设计报告word+源码 ...输入数字 3 时,显示当前账户的余额;输入数字 0 时将退出整个系统。 ———————————————— 详细介绍参考:https://blog.csdn.net/newlw/article/details/125517270

    银行计费查询系统(java语言版)

    综上所述,"银行计费查询系统(Java语言版)"不仅是一个实际的项目,也是一个学习Java编程和理解Web服务原理的优秀实例,涵盖了众多核心的Java技术和编程理念,对于Java初学者极具价值。通过实践该项目,开发者能够...

    java banking 银行管理系统

    - **基础语法**:Java语言的基础知识,包括类、对象、继承、封装、多态等概念。 - **Swing或JavaFX**:用于创建图形用户界面(GUI)的库,允许用户进行交互操作。 - **异常处理**:用于捕获和处理可能出现的错误...

    模拟银行系统(java)

    【模拟银行系统(Java)】是一个基于Java编程语言开发的软件应用,旨在提供一个类似于真实ATM(自动取款机)的功能。这个系统的核心目标是让用户能够进行一系列银行操作,如账户注册、登录、存款、取款以及查看账户...

Global site tag (gtag.js) - Google Analytics