Java

2019-05-06  本文已影响0人  Aiibai
UML时序图

参考:
http://plantuml.com/zh/sequence-diagram
https://www.jianshu.com/p/9946566dfd74
https://blog.csdn.net/fly_zxy/article/details/80911942

UML类图

泛化=实现>组合>聚合>关联>依赖

关联关系和聚合关系在语法上面难以区分,通过需要根据具体的逻辑,比如:老师和学生有关联关系,汽车和轮胎有聚合关系,人的头和嘴有组合关系。这里可以理解为:虽然轮胎可以单独存在,但是轮胎不装到汽车上面好像也没有什么用途,但是老师和学生都是完成的实体。

参考:
http://www.uml.org.cn/oobject/201211231.asp
https://www.cnblogs.com/pangjianxin/p/7877868.html
http://plantuml.com/zh/class-diagram

异常处理
image.png

检查异常:除了RuntimeException,所有继承于Exception的子类。比如:SQLException,检查异常意味着出现了异常以后还有挽救的机会,比如数据库连不上,可能是网络不稳定,捕获检查异常尝试连接。
非检查异常:检查异常以外的其他异常。为什么非检查异常不要求必须捕获?我认为非检查异常是不应该出现的异常,而检查异常是可能出现的异常,比如:NullPointerException,这种异常一般是没有办法挽救的。

建议:
对于特定的异常,自定义特定的异常类,如果都使用比较通用的异常类,不能直观的表达异常,比如:一个用于装载用户概要的方法,在找不到用户时应该抛出 NoSuchUserException ,而不是 SQLException —— 调用者可以很好地预料到用户可能找不到,但是不知道如何处理 SQLException

参考资料:
Java 异常处理及其应用
关于异常的争论

上一篇下一篇

猜你喜欢

热点阅读