I am executing following code:
I get different output in different runs.
optput
Computing average.
java.lang.ArithmeticException: Integer division by 0
at com.khalid.ch5.Average7.computeAverage(Average7.java:36)
at com.khalid.ch5.Average7.printAverage(Average7.java:20)
at com.khalid.ch5.Average7.main(Average7.java:7)
Finally in printAverage().
Exception handled in main().
Finally in main().
Exit main().
========================
java.lang.ArithmeticException: Integer division by 0
at com.khalid.ch5.Average7.computeAverage(Average7.java:36)
at com.khalid.ch5.Average7.printAverage(Average7.java:20)
at com.khalid.ch5.Average7.main(Average7.java:7)
Computing average.
Finally in printAverage().
Exception handled in main().
Finally in main().
Exit main().
=========================
Computing average.
java.lang.ArithmeticException: Integer division by 0
Finally in printAverage().
at com.khalid.ch5.Average7.computeAverage(Average7.java:36)
at com.khalid.ch5.Average7.printAverage(Average7.java:20)
at com.khalid.ch5.Average7.main(Average7.java:7)
Exception handled in main().
Finally in main().
Exit main().
==============================
Computing average.
Finally in printAverage().
Exception handled in main().
Finally in main().
Exit main().
java.lang.ArithmeticException: Integer division by 0
at com.khalid.ch5.Average7.computeAverage(Average7.java:36)
at com.khalid.ch5.Average7.printAverage(Average7.java:20)
at com.khalid.ch5.Average7.main(Average7.java:7)
I am assuming that a new
thread is being spawned for printing stack trace, so depending upon main/new thread currently active, the output is displayed. I am using jdk 1.6. Is my assumption right?