java 银行账户 透支,Java学习——银行账户模拟
以下实例是一个银行账户的模拟,通过银行卡的号码完成识别,可以进行存钱和取钱的操作。
InsufficientFundsException.java 文件代码:
// 文件名InsufficientFundsException.java
import java.io.*;
//自定义异常类,继承Exception类
public class InsufficientFundsException extends Exception
{
//此处的amount用来储存当出现异常(取出钱多于余额时)所缺乏的钱
private double amount;
public InsufficientFundsException(double amount)
{
this.amount = amount;//获取参数
}
public double getAmount()
{
return amount;
}
}
为了展示如何使用我们自定义的异常类,
在下面的 CheckingAccount 类中包含一个 withdraw() 方法抛出一个 InsufficientFundsException 异常。
CheckingAccount.java 文件代码:
// 文件名称 CheckingAccount.java
import java.io.*;
//此类模拟银行账户
public class CheckingAccount
{
//balance为余额,number为卡号
private double balance;
private int number;
public CheckingAccount(int number)
{
this.number = number;
}
//方法:存钱
public void deposit(double amount)
{
balance += amount;
}
//方法:取钱
public void withdraw(double amount) throws
InsufficientFundsException
{
if(amount <= balance)
{
balance -= amount;
}
else
{
double needs = amount - balance;
throw new InsufficientFundsException(needs);
}
}
//方法:返回余额
public double getBalance()
{
return balance;
}
//方法:返回卡号
public int getNumber()
{
return number;
}
}
下面的 BankDemo 程序示范了如何调用 CheckingAccount 类的 deposit() 和 withdraw() 方法。
BankDemo.java 文件代码:
//文件名称 BankDemo.java
public class BankDemo
{
public static void main(String [] args)
{
CheckingAccount c = new CheckingAccount(101);
System.out.println("Depositing $500...");
c.deposit(500.00);
try
{
System.out.println("\nWithdrawing $100...");
c.withdraw(100.00);
System.out.println("\nWithdrawing $600...");
c.withdraw(600.00);
}catch(InsufficientFundsException e)
{
System.out.println("Sorry, but you are short $"
+ e.getAmount());
e.printStackTrace();
}
}
}
编译上面三个文件,并运行程序 BankDemo,得到结果如下所示:
Depositing $500...
Withdrawing $100...
Withdrawing $600...
Sorry, but you are short $200.0
InsufficientFundsException
at CheckingAccount.withdraw(CheckingAccount.java:25)
at BankDemo.main(BankDemo.java:13)
java 银行账户 透支,Java学习——银行账户模拟相关推荐
- java转账_使用Java模拟银行账户存、取款、转账功能
半枯 package bank;import java.util.Scanner;/** * 1.建立一个银行账户类(Acount),具有建立新帐号.查询余额.存款.取款.转账 * 即从本账户把钱转给 ...
- JAVA初学(七):银行账户演示程序【改进版】
一.编程说明 在上一篇博客中,笔者通过Scanner实现了由键盘对银行账户的控制,虽说直观性更强一些,但是复杂度也增加了不少,甚至造成最后编出的代码有点离题的意思.因此在借鉴了网上的代码并加以自己的理 ...
- 简易银行账户系统 java
简易银行账户系统 java Bank类 import java.util.Random;public class Bank {String name, password;double money;in ...
- java银行管理系统大作业_银行管理系统项目 《JAVA程序设计》课件.doc
银行管理系统 第一部分 案例描述 案例目的 学习面向对象的主要特征和基本概念,包括类.对象.继承.接口.封装.继承.多态.方法的重载和重写.Java的访问修饰符与其它关键字等. 案例难度 ★★★★ 案 ...
- 银行账户类(Accoount)可以为账户存储交易。取款和存款都会产生交易信息。需要记录账户每次交易的信息,包括取钱还是存钱,交易的金额,交易时间和交易之后的余额。系统可以通过账户查询所有的交易次数(最
不要自卑,去提升实力 互联网行业谁技术牛谁是爹 如果文章可以带给你能量,那是最好的事!请相信自己 加油o~ 1.题目背景 银行账户类(Accoount)可以为账户存储交易.取款和存款都会产生交易信息. ...
- 从零开始的企业级Java漏洞实战丨联合漏洞银行免费公开课
文章来源|MS08067 安全实验室出品 随着越来越多的企业应用 使用Java EE进行开发 当你进行渗透测试时 是否曾面对Java站点无从下手? 是时候学一些主流的Java EE技术了! 漏洞银行携 ...
- C#实验报告 类与对象的访问性:银行账户存取款、新建账户、查询余额
实验4 C#程序的流程控制 一.实验目的 (1)理解面向对象的概念,掌握C#定义类和创建对象的方法 (2)区分类的不同数据成员,包括常量.字段和属性的定义方法,并学会控制其访问性 (3)掌握类的方法成 ...
- java安装jdk错误1316 指定的账户已存在
java安装jdk错误1316 指定的账户已存在 处理步骤: 1.卸载jdk,成功后重启 2.删除注册表中文件夹 (1)\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft文件夹 ...
- JAVA通过SSL证书创建MS AD账户及设置密码
近期由于工作需要整理一下自动化的东西,因为公司去年上线了OA,所以公司的入职系统会提交用户的信息到IT部门,最早的做法是入职到了,IT部门收集用户信息在AD中创建对应的用户信息,所以为了提高管理员的工 ...
最新文章
- 回调函数在replace方法中的应用
- python语言中文社区-Python 之父谈 Python-Go语言中文社区
- 智能拨号的联系人快速模糊匹配的算法
- jboss linux 性能,搭建jprofiler对jboss性能监控
- android 65536 gradle,如何防止在Android Gradle中使用Multi-dex
- Basic INFO: InstallShield中如何获取所调用Exe的返回值
- Webpack支持.vue文件的打包
- Python 城市列表
- expect自动登录以及远程脚本执行
- linux 内核 介绍,Linux内核详细介绍
- 枚举 函数 c语言,在C语言中函数中使用枚举类型和结构
- Excel合并不同工作簿的表到同一个工作簿
- 基于双目摄像头SGBM视差图的障碍物提取
- Clickhouse除数为0
- 自动化代码审查平台: 基于Docker Compose整合Jenkins + SonarQube
- 基于QT4的智能温度采集控制系统
- 图片文件转Bitmap-Bitmap转NV21-ARGB数据转化为NV21数据
- java url 图片路径_问个URL图片路径问题
- 二)Python非正式介绍
- 关于康托展开和逆康托展开详解,及python代码