В Java, когда вы должны бросать IllegalArgumentException
и когда InvalidParameterException
? Исходя из фона C#, у нас будет ArgumentNullException
, который получен из ArgumentException
. Если бы я хотел бы реализовать эквивалент ArgumentNullException
/ParameterNullException
в Java, я должен продлить IllegalArgumentException
или InvalidParameterException
?InvalidParameterException или IllegalArgumentException
Примечание: Я не пытаюсь реализовать ArgumentNullException
/ParameterNullException
, это просто обеспечит мне лучшее понимание, если я смогу сопоставить их с каркасом C#.
Но когда вы будете бросать 'InvalidParameterException', а не' IllegalArgumentException'? – Cornelius
@Cornelius, возможно, никогда :-) –
@Cornelius - я использовал бы это специальное 'InvalidParameterException' ** только **, если бы мне пришлось реализовать интерфейсы или типы подклассов из * инфраструктуры Java Crypto Architecture *, и выброс этого исключения обязательный (что я обычно оставляю экспертам ;-)) –