https://book.douban.com/review/6586721/
https://softwareengineering.stackexchange.com/questions/219320/when-and-how-should-i-use-exceptions
https://book.douban.com/review/6586721/
https://softwareengineering.stackexchange.com/questions/219320/when-and-how-should-i-use-exceptions