您好,我正在通过用 Java 编写一个虚拟库管理项目来学习 OOP。
在 serachBook() 中,如果在 ArrayList 中找到 book,则返回 book 对象,如果找不到则抛出自定义异常 BookNotFound。
问题1:它应该只是返回null并在调用代码时检查返回值是否为null或抛出自定义异常BookNotFound。
目前我认为 BookNotFound 是合适的,目前正在这样做。但是我发现了另一个困难:在 addbook() 中,我首先调用 searchBook() 来查看 book 已经存在,如果不存在,它会添加这本书。但是,如果书不存在,searchBook() 会抛出 BookNotFound。
Qestion 2:我应该如何处理 addBook() 中 searchBook() 抛出的这个异常,因为为了 addBook() 在列表中插入书籍,必须发生 BookNotFound 异常。那么我应该写空 Catch(BookNotFound e){} 吗?
什么是更好的 OO 实践?