Java实验 银行取款异常得抛出_cqwoniu的博客-程序员宅基地

(1)在定义一个银行类 Bank 时, 有 deposit、withdraw、showBalance 等方
法。若取钱数大于余额则作为异常处理(InsufficientFundsException)。产生异常的
条件是余额少于取额,因此是否抛出异常要判断条件,要定义好自己的异常类。
package DD;
import java.util.*;
public class Bank {
public double withdraw;
public double balance;
public Bank(double balance) {
this.balance=balance;
}
public void Deposit(double deposit) {
System.out.println("请输入存款金额:");
balance = balance+deposit;
System.out.println("余额为:"+balance);
}
public void withDraw (double withDraw) throws InsufficientFundsException  {
System.out.println("请输入取款金额:");
if (withdraw<balance) {
throw new InsufficientFundsException ();
}
balance=balance-withDraw;
}
public static void main (String []args) {
Bank ba = new Bank (0);
ba.Deposit(100);
try {
ba.withDraw(200);
} catch (InsufficientFundsException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

}

package DD;


public class InsufficientFundsException  extends Exception{
Bank bal;
public double withdraw;
InsufficientFundsException (){};
@Override
public String toString() {
String str="余额不足";
return str;
}
}


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/cqwoniu/article/details/80813004

智能推荐

跟开涛学SpringMVC..._达文西不辅助的博客-程序员宅基地

http://jinnianshilongnian.iteye.com/blog/1631021

浅谈MVP_Tomes_V_White的博客-程序员宅基地

转载自:http://blog.csdn.net/lmj623565791/article/details/46596109一、概述对于MVP(Model View Presenter),大多数人都能说出一二:“MVC的演化版本”,“让Model和View完全解耦”等等。本篇博文仅是为了做下记录,提出一些自己的看法,和帮助大家如何针对一个Activity页面去编写针对MVP风格的代

Automatic generation of PO (ME56 ME59N)_weixin_33874713的博客-程序员宅基地

使用ME51N创建PR后,可以通过设置Material Master Data:Auto POVendor Master Data:Auto PO之后 Assign source of supply to requisites,最后使用ME59N来Automatic creation of Purchase Or...

ThinkPHP系统内置单字母函数函数_猫头098的博客-程序员宅基地

ThinkPHP中有很多重要的函数,其中大部分是单字母函数,这些函数在开发体验中发挥了重大的作用。有句话说的很精辟:浓缩的才是精华! 这绝对是TP的单字母方法的真实写照,用过的你一定懂的!为了能方便大家学习和掌握,在这里汇总下ThinkPHP中的经典函数用法,无论你是资深还是菜鸟TPer,绝对不容错过哦 ^_^A 函数:实例化控制器R 函数:直接调用控制器的操作方法C 函数

ccombobox 清空_weixin_30838873的博客-程序员宅基地

ResetContent转载于:https://www.cnblogs.com/nanshouyong326/archive/2009/05/05/1449721.html

[Unity3D]射线碰撞检测+LayerMask的使用_守枫竹清的博客-程序员宅基地

射线:射线是3D世界中一个点向一个方向发射的一条无终点的线,在发射轨迹中与其他物体发生碰撞时,它将停止发射 。用途:在unity中射线应用范围比较广, 多用于碰撞检测(如:子弹飞行是否击中目标)、角色移动 等。相关API:1、Ray Camera.main.ScreenPointToRay(Vector3 pos)   返回一条射线Ray从摄像机到屏幕指定一个点

随便推点

TOP 10 ONLINE COMPILER_weixin_33737774的博客-程序员宅基地

Top 10 Online Compilers +1338TweetShare106SharePin444 SharesOnline compilers are one type of tools that allows to compile the source code and execute it. Online c...

在QT中使用SQLite_十三剑的博客-程序员宅基地

前言SQLite(sql)是一款开源轻量级的数据库软件,不需要server,可以集成在其他软件中,非常适合嵌入式系统。Qt5以上版本可以直接使用SQLite(Qt自带驱动)。用法1 准备引入SQL模块在Qt项目文件(.pro文件)中,加入SQL模块:QT += sql引用头文件在需要使用SQL的类定义中,引用相关头文件。例如:#include &amp;lt;QSqlDatabase&amp;gt;#inclu...

华为鸿蒙系统建立生态链的环境,华为自研操作系统,怎么构建生态?感觉太难了?..._梨漾的博客-程序员宅基地

华为自研操作系统虽然很难,但也是必须的。就算没有这次谷歌的主动封杀,早晚肯定还是要面对这一关。毕竟安卓系统不是国产的,未来充满了不确定性。尽管理论上安卓系统的非谷歌框架部分是必须遵循开源协议的,谷歌没有权利阻止华为使用安卓系统的大部分功能。但如果谷歌不给华为提供系统升级服务,也会造成很多问题。而如果华为想要自研操作系统,并构件完整的生态环境,需要从以下几个方面着手:1、做开源操作系统。安卓系统之所...

Linux 软件安装卸载 (源码、rpm)_weixin_30329623的博客-程序员宅基地

Linux下软件的安装主要有两种不同的形式。第一种安装为源码安装,文件名为xxx.tar.gz压缩包为主;以第一种方式发行的软件多为以源码形式发送的。第二种方式则是另一种安装文件名为xxx.i386.rpm。直接以二进制形式发送的。第三种 是在线安装方法 yum 在另一篇中详细介绍。安装前先查看是否安装过,避免重复安装查看有没有安装过(以mysql为例):...

HTML和css学术报告,清华大学 张超 副教授访问我院并做学术报告_知性人生的博客-程序员宅基地

应凌振老师邀请,清华大学张超老师于7月9日(周五)下午2:30在计算机楼三楼313会议室来我院做学术报告,具体情况如下。报告题目:智能漏洞攻防技术报告时间:7月9日(周五)下午2:30报告地点:九龙湖校区计算机楼三楼313会议室报告摘要:围绕漏洞的攻防是网络空间安全中的核心问题之一。当前攻防自动化程度不高。本次报告将介绍漏洞攻防技术的发展,以及团队在漏洞挖掘、缓解及利用方向的研究成果。报告人:张超...

添加椒盐噪声_斯大分的博客-程序员宅基地

#include &amp;lt;iostream&amp;gt;#include &amp;lt;opencv2/core/core.hpp&amp;gt;#include &amp;lt;opencv2/highgui/highgui.hpp&amp;gt;#include &amp;lt;opencv2/imgproc/imgproc.hpp&amp;gt;void salt(cv::Mat image, int n){ int i, j;...

推荐文章

热门文章

相关标签