Answer (1 of 4): If you have enough time, use one every time you catch a standard exception with intention to rethrow, and every time none of the standard exceptions are appropriate for the exact problem you’re seeing. In the former case, define a higher-level exception, then wrap the lower-level...