O'Reilly logo
  • Fractal Sciences thinks this is interesting:

In general, you should not use assertions for checking the validity of arguments to methods because you want that behavior to be part of your application, not just a test for quality control that can be turned off. The validity of input to a method is called its preconditions, and you should usually throw an exception if they are not met; this elevates the preconditions to part of the method’s “contract” with the user. However, checking the correctness of results of your methods with assertions before returning them is a good idea; these are called


Cover of Learning Java, 4th Edition


ASB: You do this. Re-evaluate.