Difference between revisions of "Assertions"
From Suhrid.net Wiki
Jump to navigationJump to search (Created page with "== Introduction == * Assertions allow the testing of assumptions about a program. * Using assertions allow easy detection of bugs during development without writing exception h...") |
|||
| Line 3: | Line 3: | ||
* Assertions allow the testing of assumptions about a program. | * Assertions allow the testing of assumptions about a program. | ||
* Using assertions allow easy detection of bugs during development without writing exception handlers etc. | * Using assertions allow easy detection of bugs during development without writing exception handlers etc. | ||
| + | * We "assert" that something will be true at some point in the code. If it is, code keeps running, if it is false, an AssertionError will be thrown. | ||
| + | |||
| + | Example: | ||
| + | <syntaxhighlight lang="java5"> | ||
| + | |||
| + | //Without assertions | ||
| + | |||
| + | private static void processAge1(int age) { | ||
| + | if(age > 0) { | ||
| + | System.out.println("Processing age ..."); | ||
| + | } else { | ||
| + | System.out.println("Age < 0 !"); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | //With assertions | ||
| + | |||
| + | private static void processAge2(int age) { | ||
| + | assert age > 0; | ||
| + | System.out.println("Processing age ..."); | ||
| + | } | ||
| + | |||
| + | </syntaxhighlight> | ||
[[Category:OCPJP]] | [[Category:OCPJP]] | ||
Revision as of 01:46, 20 July 2011
Introduction
- Assertions allow the testing of assumptions about a program.
- Using assertions allow easy detection of bugs during development without writing exception handlers etc.
- We "assert" that something will be true at some point in the code. If it is, code keeps running, if it is false, an AssertionError will be thrown.
Example:
//Without assertions
private static void processAge1(int age) {
if(age > 0) {
System.out.println("Processing age ...");
} else {
System.out.println("Age < 0 !");
}
}
//With assertions
private static void processAge2(int age) {
assert age > 0;
System.out.println("Processing age ...");
}