Якщо вказати суфікс винятку для класів виключень, мені здається, що кодовий запах (надлишня інформація - решта імені передбачає стан помилки, і він успадковується від винятку). Однак також здається, що всі це роблять, і це здається гарною практикою.
Я хочу зрозуміти, чому це хороша практика.
Я вже бачив і читав питання, чому винятки, як правило, мають назву суфікса у назві класу
Питання стосується PHP, і хоча відповіді, ймовірно, дійсні для Java. Чи є якісь інші аргументи чи це насправді так просто, як явно їх диференціювати?
Якщо взяти приклади з попереднього питання - чи дійсно могли бути заняття в java з ім'ям, FileNoFoundяке не є винятком? Якщо це може бути, чи гарантує суфікс це Exception?
Дивлячись на швидку ієрархію в затемненні Exception, напевно, переважна більшість з них має суфікс винятку, але є кілька винятків. javassistє прикладом бібліотеки, яка, здається, має кілька винятків без суфікса - наприклад BadByteCode, BadHttpRequestтощо.
BouncyCastle це ще одна ліб з винятками на кшталт CompileError
Я трохи погуглився і трохи інформації з цього питання.
FileNotFound ArrayIndexOutOfBoundsі OutOfMemoryбільше спостережень / описів, але потім застосовуються до іменника Exception.
Exceptionсуфікс, або ми повинні робити винятки для виняткових винятків?" ;)