what is use of assert keyword in java..?



what is use of assert keyword in java..? ..

Answer / me

"assert" statements are part of the Java assertion feature
introduced in Java 1.4. Java assertion feature allows
developer to put "assert" statements in Java source code to
help unit testing and debugging.

An "assert" statement has the following format:

assert boolean_expression : string_expression;

When this statement is executed:

* If boolean_expression evaluates to true, the statement
will pass normally.
* If boolean_expression evaluates to false, the
statement will fail with an "AssertionError" exception.

Here is a good example of an "assert" statement used to
check an invariant:

// Day-of-week calculator
// by FYICenter.com

public class DayOfWeek {
private int days = 0;

// main method for testing purpose
public static void main(String[] arg) {
int d = Integer.parseInt(arg[0]);
DayOfWeek o = new DayOfWeek(d);
System.out.print("Day of the week: "+o.getDayOfWeek());
}

// constrcutor
public DayOfWeek(int d) {
days = d;
}

// calculate day of the week
public String getDayOfWeek() {
if (days % 7 == 0) {
return "Sunday";
} else if (days % 7 == 1) {
return "Monday";
} else if (days % 7 == 2) {
return "Tuesday";
} else if (days % 7 == 3) {
return "Wednesday";
} else if (days % 7 == 4) {
return "Thursday";
} else if (days % 7 == 5) {
return "Friday";
} else {
assert days % 7 == 6 : days;
return "Saturday";
}
}
}

How To Compile and Run Java Programs with "assert" Statements?

If you are using "assert" statements in your Java program
for unit testing and debugging, you need to compile and
execute the program with extra command options to use them:

* Compilation - "javac -source 1.4 MyClass.java". This
tells the compiler to accept source code containing assertions.
* Executionn - "java -ea MyClass". This tells the JVM to
not skill "assert" statements. "-ea" is the same as
"-enableassertions".

Here is an example of compiling and executing the sample
program, DayOfWeek.java, presented in the previous question:

javac -source 1.4 DayOfWeek.java

java -ea DayOfWeek 1
Day of the week: Monday

java -ea DayOfWeek 6
Day of the week: Saturday

java -ea DayOfWeek 14
Day of the week: Sunday

java -ea DayOfWeek -2
Exception in thread "main" java.lang.AssertionError: -2
at DayOfWeek.getDayOfWeek(DayOfWeek.java:34)
at DayOfWeek.main(DayOfWeek.java:11)

As expected, the code does not handle negative numbers correctly

Is This Answer Correct ?    8 Yes 3 No

Post New Answer

More Struts Interview Questions

What is the difference between a Strut and a Class?

1 Answers  


What are the ways in which duplicate form submission can occur?

0 Answers  


How can we group related actions in one group in Struts?

0 Answers  


how does request processor relates to action mapping?

0 Answers  


Please can you tell me ,where can we used the MVC other than web applications.

1 Answers  


while working struts in intellij 7.0error unable to initialize tld location cache: zip file is closed is displayed anybdy can answer me immdialy .ungert

0 Answers   Banking,


What is the purpose of redirect result type?

0 Answers  


How we can configured action mapping in struts?

0 Answers  


What does execandwait interceptor?

0 Answers  


What is the purpose of struct-config.xml in struct2?

0 Answers  


How do u provide security to ur project?(Banking domain project)

0 Answers   Polaris,


What’s the difference between validation.xml and validator-rules.xml files in struts validation framework?

0 Answers  


Categories