When line 2 is executed and T1.test() is called with int value 0 the first statement attemps to divide 0 by 2, which is perfectly legal.
Dividing 0 by an arbitry value is legal and will always result in 0.
Dividing an arbitrary value by 0 is not legal and will always result in an java.lang.ArithmeticException being thrown.
I believe you have the two mixed up.
Edit: Sheryl beat me to it
[ March 13, 2008: Message edited by: Jelle Klap ]
Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.