这几天对自定义异常,几个比较常用的API--->Date、DateFormat、Calendar、Math、System、包装类、正则表达式这些内容进行了巩固,最终还是觉得自定义异常真的是学问太多了,用到的地方太多太多了,下面介绍一个自定义异常,边说边讲

请使用代码描述:

每一张借记卡(DebitCard)都有账号(accountNumber):和余额(money); 余额永远不能为负数

要求:当借记卡的余额为负数的时候需要抛出自定的异常

创建包:com.itheima.level3_03

定义异常类无效金额异常(UnValidMoneyException),继承RuntimeExpetion

提供无参构造和有参构造

定义借记卡类(DebitCard)

属性: 账号(accountNumber):和余额(money);

提供空参构造

提供有参数构造

有参构造需使用setXxx方法给对应的成员变量赋值

提供setter和getter方法

在setMoney(int money)中

如果money为负数,抛出无效的金额异常UnValidMoneyException

最后给成员变量money赋值

定义Test19类,提供main方法,在main方法中

使用有参构造创建,创建DebitCard对象,金额传入一个负数

运行测试,注释代码

使用空参构造创建DebitCard的对象 dc

使用setMoney方法传入一个大于0的数,运行程序

使用setMoney方法传入一个小于0的数,运行程序

操作步骤答案

/*

1.创建包:com.itheima.level3_03

2.定义异常类无效金额异常(UnValidMoneyException),继承RuntimeExpetion

提供无参构造和有参构造

*/

publicclass UnValidMoneyException extends RuntimeException {

public UnValidMoneyException() {

super();

}

public UnValidMoneyException(String message) {

super(message);

}

}

/*

3.定义借记卡类(DebitCard)

属性: 账号(accountNumber):和余额(money);

提供空参构造

提供有参数构造

有效参构造需使用setXxx方法给对应的成员变量赋值

提供setter和getter方法

在setMoney(int money)中

如果money为负数,抛出无效的金额异常UnValidMoneyException

最后给成员变量money赋值

*/

publicclass DebitCard {

//  账号(accountNumber)

private String accountNumber;

//    余额(money);

privateint money;

//  提供空参构造

public DebitCard() {

super();

}

//  提供有参数构造

public DebitCard(String accountNumber, intmoney) {

super();

//  使用setXxx方法给对应的成员变量赋值

setAccountNumber(accountNumber);

setMoney(money);

}

//  提供setter和getter方法

public String getAccountNumber() {

return accountNumber;

}

publicvoid setAccountNumber(String accountNumber) {

this.accountNumber = accountNumber;

}

publicint getMoney() {

return money;

}

//  在setMoney(int money)中

publicvoid setMoney(intmoney) {

//  如果money为负数,抛出无效的金额异常UnValidMoneyException

if(money < 0){

thrownew UnValidMoneyException("余额无效:"+money);

}

//  最后给成员变量money赋值

this.money = money;

}

}

/*

4.定义Test19类,提供main方法,在main方法中

使用有参构造创建,创建DebitCard对象,金额传入一个负数

运行测试,注释代码

使用空参构造创建DebitCard的对象 dc

使用setMoney方法传入一个大于0的数,运行程序

使用setMoney方法传入一个小于0的数,运行程序

*/

publicclass Test19 {

publicstaticvoid main(String[] args) {

//     使用有参构造创建,创建DebitCard对象,金额传入一个负数

//     DebitCard dc = newDebitCard("001", -100);

//     运行测试,注释代码

//     使用空参构造创建DebitCard的对象 dc

DebitCard dc = new DebitCard();

//     使用setMoney方法传入一个大于0的数,运行程序

dc.setMoney(100);

//     使用setMoney方法传入一个小于0的数,运行程序

dc.setMoney(-1);

}

}

============================================================

throws是用来声明一个方法可能抛出的所有异常信息,通常不用显示的捕获异常,可由系统自动将所有捕获的异常信息抛给上级方法.

throw则是指抛出的一个具体的异常类型.则需要用户自己捕获相关的异常,而后在对其进行相关包装,然后在将包装后的异常信息抛出.

异常不是错误,错误出现了必须停止运行进行改正,但是出现了异常通常在实际应用中,是一种必须的使用方式.

==============================================================

一首小清新的歌送给大家

带你去旅行歌词

带你去旅行 - 校长
词:朱贺
曲:朱贺

今天妆令人特别着迷
Oh 我说 baby
出门前换上新的心情
Oh 我的 lady
你喜欢有小情绪
像晴天的乌云
头发长见识短的惊奇
表情丰富令人着迷
你的一切我都好奇像秘密
安全带系好带你去旅行
穿过风和雨
我想要带你去浪漫的土耳其
然后一起去东京和巴黎
其实我特别喜欢迈阿密
和有黑人的洛杉矶
其实亲爱的你不必太过惊奇
一起去繁华的上海和北京
还有云南的大理保留着回忆
这样才有意义
今天妆令人特别着迷
Oh 我说 baby
出门前换上新的心情
Oh 我的 lady
你喜欢有小情绪
像晴天的乌云
头发长见识短的惊奇
表情丰富令人着迷
你的一切我都好奇像秘密
安全带系好带你去旅行
穿过风和雨
我想要带你去浪漫的土耳其
然后一起去东京和巴黎
其实我特别喜欢迈阿密
和有黑人的洛杉矶
其实亲爱的你不必太过惊奇
一起去繁华的上海和北京
还有云南的大理保留着回忆
这样才有意义
我想要带你去浪漫的土耳其
然后一起去东京和巴黎
其实我特别喜欢迈阿密
和有黑人的洛杉矶
其实亲爱的你不必太过惊奇
一起去繁华的上海和北京
还有云南的大理保留着回忆
这样才有意义

=====================================================================

new出来的不一定是我们想要的对象,哈哈

自定义异常,throw,throws和带你去旅行相关推荐

  1. 计算机音乐 带你去旅行,带你去旅行(全乐器)

    Introduction "带你去旅行(全乐器)" is a MIDI music piece in Pop Music style, played by an ensemble ...

  2. 计算机音乐 带你去旅行,带你去旅行

    [ti:带你去旅行] [ar:校长] [al:带你去旅行] [by:] [offset:0] [00:00.09]带你去旅行 - 校长 [00:00.89]词:朱贺 [00:01.04]曲:朱贺 [0 ...

  3. 计算机音乐带你去旅行数字乐谱,出去玩曲谱_计算器打音乐怎么打 谁有歌谱

    求计算器数字乐谱,我想用计算器'按'出来歌来 = ➗ = ➗ = ➗ = + ➗ - 8 1 5 6 8 1 5 6 9 1 1 = ➗ = ➗ = ➗ = + ➗ - 8 1 5 6 8 1 9 8 ...

  4. 计算机音乐带你去旅行数字乐谱,带你去旅行(抖音热门歌曲,校长)钢琴谱钢琴简谱数字谱钢琴双手简谱.pdf...

    蛐蛐钢琴网 乐谱编号 :56778 带你去旅行 注解 =112 秒儿姑娘 > 4 > 4 a a a a M M M M M M M M M M M M M M M M M M M M M ...

  5. Python实战:病毒困我于斗室,桌面带我去旅行

    文章目录 1. 用Python设置Windows壁纸 2. 随机切换Windows壁纸 3. 定时切换Windows壁纸 近代史上,每一个庚子年都不寻常:1840年鸦片战争,1900年八国联军侵华,1 ...

  6. 计算机音乐 带你去旅行,网易云音乐《带你去旅行》热评

    给你一首歌的时间 @明知是失败:帮你算了一下.你这次旅游估计要花20多万 @你迪er:昨天逗逗直播 粉丝在校长直播间带对型 说逗逗让他刷个大煎饼 校长明显眼泛泪 说她现在挺好 我也挺好 每天在家叫外卖 ...

  7. python画端午节_我想带你去旅行,我用Python提前做了一份端午旅游攻略,请收下!...

    旅游是调节心情的有效途径,越来越多的上班族和学生期待利用假期时间外出游 玩来开拓眼界.舒缓压力.然而真正有了假期,许多人却会因"去哪玩"的问题倍感困惑,六月份正是出行的好时节,期间 ...

  8. 带你去旅行——基于Web的旅游网站

    一.核心技术 1.Web层 1>servlet:前端控制器 2>html :视图 3>Filter :过滤器–>解决乱码问题 4>BeanUtil:数据封装 5>J ...

  9. 父亲节带爸爸去伦敦旅行,陪他一直走在有爱的旅途中

    成长道路上,爸爸一直是我们最坚实的后盾,他给我们鼓励,为我们指引正确的方向.在专属爸爸的节日里,带他去旅行吧,陪他一直走在有爱的旅途中!为大家甄选了适合父亲节去参观的伦敦旅游景点和体验,祝大家都拥有难 ...

最新文章

  1. 使用Vscode进行远程炼丹
  2. 阿里mysql连接数据库服务器配置_配置链接mysql数据库
  3. 使用CUrl断点续传下载Linux内核5.6.2源码
  4. ubuntu16.04 Linux+xfce4的文件夹出现两种背景颜色+文件夹中右键打开终端失灵了.
  5. Arm Linux交叉编译和连接过程分析(1)
  6. Adobe和苹果相互推诿 不支持Flash谁之过?
  7. 开源ckplayer 网页播放器, 跨平台(html5, mobile),flv, f4v, mp4, rtmp协议. webm, ogg, m3u8 !...
  8. JavaScript学习系列之执行上下文与变量对象篇
  9. 免费HTTP数据抓包Fiddler2[4.6.1.2]以及显示中文包内容的方法
  10. vivado根据语言模板定义一般IO的管脚约束文件xdc
  11. C++ 类的前向声明
  12. 所谓的三十之后无技术
  13. TensorFlow by Google神经网络深度学习的 Hello World Machine Learning Foundations: Ep #1 - What is ML?
  14. 使用 Android 签名 APK
  15. rj45管脚定义_RJ45接口定义
  16. ROS软路由试玩发射多个wifi专用路由器一拖二十软路由换IP改ssid mac方法
  17. Word页码从任意指定页开始设置
  18. 算法学习(二十)——GAE
  19. openwrt路由表设置_OpenWrt路由器常用设置
  20. 【实践与问题解决38】win10桌面图标变成一个空白图标

热门文章

  1. 如何用 Google ARCore 打造抖音“千万+”?神奇 AR 揭秘三大锦囊
  2. Windows 10 系统常用快捷键
  3. ArcGIS Server发布服务失败解决办法及ArcGIS Server for Javascript影像图层加载透明度设置(2021.2.12)
  4. 五个入门深度学习自然语言处理资源
  5. 精灵混合加密系统_多种解锁体验,小益天猫精灵智能指纹锁E206T
  6. Java时间相关的对象和方法
  7. windows server2012防火墙无法使用的解决方法
  8. 三星“SM”开头型号手机将采用泰泽Tizen系统平台
  9. 创意搜狗输入法设计理念(转2008-02-04 21:14)
  10. 加密与解密——软件保护方式