「产品经理」遇到异常怎么办?死了都要try( 二 )
那么问题来了 , Java里面定义的异常是很有限的 , 一共就那么些异常 , 所以有时候就需要我们自定义异常来说明情况 。
在Java里面 , 一切万物就可成类 , 自定义异常 , 就是自己创建一个异常类 。
- 编译期异常:自定义类并继承于Exception
- 运行期异常:自定义类并继承于RuntimeException 。
现在有个用户填年龄时就是要填-18岁 , 怎么办?
很显然 , 年龄是不可能-18岁的 , 如果类的成员变量没有封装 , 用户是直接可以随便修改的 , 显然这样是不行的 , 所以封装的作用就出来了 。
什么叫封装?
通俗点说就是:用户没法直接修改属性了 , 而是通过方法修改 , 这样的话 , 我就可以在方法里面加一个判断 , 你若是输入的数据不合适 , 你就没法修改属性成功 。
这就是封装的意义 。
好 , 现在我们在方法里 , 设定一个年龄规则 , 用户输入的数字若是不在这个范围里面 , 就会抛出异常 , 并且提醒用户 。
好 , 现在问题又来了 , 产品经理看了之后 , 觉得你写的这个RuntimeException它看不懂 , 他要年龄异常(ArgException) , 这样更加地直观 。
可是Api里面又没有ArgException这个异常 。
要知道产品经理是会对程序员提各种各样的需求的 , 原则上程序员是需要满足产品经理提的要求的 , 但是有些产品经理又不怎么懂技术 , 就会乱提要求 。
我记得有一年平安的产品经理就和程序员发生了矛盾 , 双方大打出手 , 还上了热搜 , 闹得沸沸扬扬的 。
当时产品经理提的要求好像是:
用户使用平安APP时 , APP界面颜色要和用户的手机壳颜色一样 。
当时程序员就觉得 , 这怎么弄?没法做 , 产品经理又要做 , 于是两个人就打起来了 。
当然 , 这个需求能否通过技术上的手段解决我也不清楚 。
回到我们自定义异常的问题 , 产品经理说要ArgException , 怎么办?
自定义一个异常就好了 。
异常里面的底层到底是如何处理的 , 我们清楚么?
我们不清楚 , 那不清楚怎么写?
这个时候 , 面向对象第二个特性:继承的作用就出来了 。
我不需要知道怎么写 , 我只需要继承某个异常就好了 , 父类是怎么处理的 , 我直接使用它的方法就好了 。
这就是自定义异常 , 特别简单 。
总结:
感谢你的观看
如果可以的话 , 麻烦帮我点个赞 , 谢谢你
推荐阅读
- 互联网乱侃秀|国产128L产品将推出,打破美、韩垄断局面,内存市场迎变局
- 风月无关|768P、1080P、4K,约1300元起,一加发布三款新电视产品
- 蓝景源|一款出身充满争议的产品,索尼PlayStation
- #手机行业#抵制我国产品仅15天,印度就“受不了了”?外媒:打脸来这么快
- 小谦|MacBook Pro? 15 成过时产品,苹果2012年中期视网膜?屏
- 「华为」史上最强禁令出台!各国运营商不准购买华为中兴产品,英国不干了
- 电子科技站|Reno4获最受关注产品,ZDC六月榜单出炉,OPPO
- 光一样的少年|新型农产品集市亮相渝北三亚湾,智慧物联
- 经理人网|X50 Pro+还有新惊喜,9亿像素全景,暗光拍摄清晰呈现,vivo
- 威锋网|索尼可穿在身上的空调产品来了:通过App调温
