Mar*_*off 10
查看Ruby异常列表,SignalException是唯一被命名的异常*Exception ; 其他一切都是XXXError(除了SystemExit和fatal).如果有的话,那就是命名你的例外FooError.我找不到任何具体原因,因为我SignalException没有命名SignalError.
该约定适用Module::#{Type}Error于由您的应用程序引起的任何事情(例如http://weblog.jamisbuck.org/2007/3/7/raising-the-right-exception).Ruby中的异常处理不像Java中那样分层,因为异常模型在语言级别上是不同的.
从我所看到的,对于C/FFI/JNA扩展,这些约定更加松散.