Day26练习java-抛出例外

昨天使用的是在有明确资讯时的例外处理,可以直接使用try catch抓出来,但有时在方法里需要传入资料,但此时资料还没有传入无法知道之後进来的资料是否有误,因此必须先未雨绸缪,先确保程序会照常执行,如果有例外再让它自行抛出。
通常抛出例外的方式有两种:
1.在程序码叙述中,使用throw
2.在定义方法时,使用throws宣告可以抛出的例外,简单来说就是方法()throws例外
而例外不是只能使用java内建的,也是可以自己定义的喔~~
下方是程序实作:

可以发现throws是接在方法後面,而throw会在一般叙述中
https://ithelp.ithome.com.tw/upload/images/20201011/20130684fkojp48mgR.png
定义一个不让薪水过高的例外类别
https://ithelp.ithome.com.tw/upload/images/20201011/201306841UZZaq4SK0.png
如果要用自己定义的例外就必须要先继承Exception,就可以选择要不要复写原本的方法,但是其实不太需要,因为通常只是要一个结果,自己额外写就行了,因为这只是个demo所以我都有写。
https://ithelp.ithome.com.tw/upload/images/20201011/20130684193NEiyHMF.png
用catch 抓自己定义的类别
https://ithelp.ithome.com.tw/upload/images/20201011/20130684VPNgTcNYkh.pnghttps://ithelp.ithome.com.tw/upload/images/20201011/201306842EIZoCbDCG.png


<<:  Microflows的Java升级版

>>:  [Day26] 第二十六课 Azure巢状虚拟化-1 [进阶]

Day15. 用Blue Prism放榜,紧张时刻-BP Choice Stage选择阶段

回忆小时候,最常遇到的紧张时刻就是公布成绩(放榜), 尤其分数被分成甲、乙、丙、丁….等, 比得在精...

DAY27 - 来加速你的网站!利用Web Worker创造多执行绪的Javascript

什麽是Web Worker? 它可以做什麽?在了解Web Worker前,可能需要先知道:网页中 J...

Day 16:axios 先封装,API 轻松发

上篇我们在单一元件内使用 axios 发送 API,但如果专案规模愈来愈大,需要同时管理多个功能的 ...

使用Lucene.Net达成全文检索!基础解说(一)

Lucene.Net是一套C#开源全文索引库,其主要包含了: · Index : 提供索引的管理与词...

谁有百度帐号~可以帮我下载个影片

目前无法注册百度帐号了,帮帮忙~~ ...