Привет!
Есть несколько способов проверять аргументы на правильность. Например, для проверки на null можно использовать:
- if (!ReferenceEquals(arg, null)) throw…
- Code Contracts: Contract.Requires(!ReferenceEquals(arg, null))
- Guard.IsNotNull(arg, nameof(arg))
В статье я рассмотрю только третий вариант (все примеры кода — для C#, однако некоторые из них будут полезны и в Java).