IllegalArgumentException is a runtime exception, so doesn't have to be declared in the method header or documentation. Still a good idea, however, so people using the library know it is possible.