自定义抛出throw 对象练习
- package ltb6w;
- import java.util.*;
- public class Bank {
- private String select;
- private String select2;
- private double balance=0.0; //余额
- private double inputbalance=0.0;
- private Scanner sc=new Scanner(System.in);
- public Bank() {
- System.out.println("请输入存款额度:");
- }
- @SuppressWarnings("serial")
- class NotSufficientFunds extends Exception { //自定义异常类
- private String insufficient;
- NotSufficientFunds(String s ) {
- insufficient=s;
- }
- public String getMessage() {
- return insufficient;
- }
- }
- public void deposite() throws Exception{//存款操作
- inputbalance=sc.nextInt();
- if(inputbalance<0) {
- throw new NotSufficientFunds("存款不能是负数"); //抛出自定义异常
- }
- this.balance=inputbalance+balance;
- System.out.println("存款总额:"+balance);
- }
- public void withdrawa() throws Exception{//取款操作
- System.out.println("请输入取款数:");
- this.balance=balance-sc.nextInt();
- if (balance<0) { //激发异常类
- throw new NotSufficientFunds("余额已经是负数了");
- }
- System.out.println("余额:"+this.getbalawal());
- }
- public double getbalawal() { //获取余额操作
- return balance;
- }
- public static void main(String[] args) {
- Bank b=new Bank();
- while (true) {
- try {
- b.deposite();
- } catch (Exception e) {
- e.printStackTrace();
- }
- System.out.println("是否继续存款:是or否");
- try {
- b.select=b.sc.next(); // 容易出异常的地方
- }catch (InputMismatchException e) {
- System.out.println("不要输入(是or否)之外无关的存款数据,从来,再来。");
- continue;
- }
- if("否".equals(b.select)) {
- while (true) {
- System.out.println("看仔细了!!!是否还继续取款:是or否");
- try {
- b.select2=b.sc.next(); // 容易出异常的地方
- }catch (InputMismatchException e) {
- System.out.println("不要输入(是or否)之外无关的数据,从来,再来。");
- continue;
- }
- if("是".equals(b.select2)) {
- try {
- b.withdrawa();
- break;
- } catch (Exception e) {
- e.printStackTrace();
- }
- }else if ("否".equals(b.select2)){
- System.out.println("不管你选不选否都当做退出。["+b.select2+"]");
- break;
- }
- }
- System.out.println("已经成功退出");
- break;
- }else if("是".equals(b.select)) {
- System.out.println("继续输入金额,come on baby!");
- }
- }
- }
- }
自定义抛出throw 对象练习的更多相关文章
- 【优化】自定义抛出throw 对象练习
package ltb6w; import java.util.*; public class Bank { private boolean bool=true; private String sel ...
- java中异常的抛出:throw throws
java中异常的抛出:throw throws Java中的异常抛出 语法: public class ExceptionTest{ public void 方法名(参数列表) throws 异常列表 ...
- java中抛出throw关键字是怎么用的? 举例?
5.抛出throw关键字 马克-to-win:我们先说5/0的原理,当程序运行到5/0的时候,java系统JVM会在后台new出一个除0异常实例,之后把这个实例传入catch块儿供开发者使用.马克-t ...
- java 異常抛出 throw 與 return
package 異常; public class TestException { public TestException() { } boolean test ...
- java-异常-原理异常对象的抛出throw
1 class Demo { 2 public static int method(int[] arr,int index) { 3 4 // System.out.println(arr[index ...
- java自定义抛出的异常Exception
package com.zhanzhuang.exception; public class CustomizeException { public static void main(String[] ...
- 133.throw机制 抛出类类型
#include <iostream> using namespace std; //try尝试执行,抛出throw,throw之后语句不再执行 //catch处理throw的异常 voi ...
- Java异常处理-----抛出处理
抛出处理 定义一个功能,进行除法运算例如(div(int x,int y))如果除数为0,进行处理. 功能内部不想处理,或者处理不了.就抛出使用throw new Exception("除数 ...
- 微信小程序-自定义方法的抛出与引用
一. 定义方法与抛出(utils/foo.js文件中) function say () { console.log('自定义的say方法')} # 定义方法 module.exports = {sa ...
随机推荐
- JavaBasic_02
Java的基础框架 3W:What How Why What:一个东西是什么,具备什么样的功能 怎么用 How: 怎么做?功能如何实现 读源代码(jdk)->学习很多,优雅的编程技巧建立在wha ...
- 百练8216-分段函数-2016正式A题
百练 / 2016计算机学科夏令营上机考试 已经结束 题目 排名 状态 统计 提问 A:分段函数 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 编写程序 ...
- vs2015连接mysql进行数据库操作
要求:电脑提前安装好vs,mysql. 1.在需要连接mysql的项目上右键选择“属性” -> “C/C++” -> “常规” ->选择“附加包含目录” 在弹出窗口中添加mysql的 ...
- animate.css动画
添加类名的时间不要只添加动画的类名,也要加上animated,使用的时间可以把自己需要的效果复制出来
- opencv感兴趣区域ROI
addWeighted //显示原图 Mat src = imread("data/img/1.jpg"); imshow("src",src); //显示lo ...
- linux下使用小票打印
linux下使用小票打印 打印机: Xprinter XP-58IIH指令支持: ESC/POS接口: USB, 蓝牙 Linux系统: Centos7 蓝牙配对很快, 配对好后就是连接状态. 但很快 ...
- python在图片上画矩形
python在图片上画矩形 image_path = '' image = cv2.imread(image_path) first_point = (100, 100) last_point = ( ...
- poj 2155 B - Matrix 二维树状数组
#include<iostream> #include<string> #include<string.h> #include<cstdio> usin ...
- Ubuntu下一个好用的终端
在终端下输入: sudo apt-get install terminator 快捷键: shift+ctrl+e 在当前窗口右侧新开一个窗口 shift+ctrl+w ...
- 《DSP using MATLAB》Problem 5.3
这段时间爬山去了,山中林密荆棘多,沟谷纵横,体力增强不少. 代码: %% +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...