This is possible because Java follows the IEEE standard for floating point division.
It is true that integer division by 0 will generate ArithmeticException, but division by floating point by 0 gives a special floating point value for Infinity.
To develop, JLS, section 15.17.2 , says:
[I] f 0, ArithmeticException.
IEEE 754:
()
. .
: " IEEE ,
Infinity - ? " IEEE
:
( ) ? "-" (NaN)? 754 . , , . NaNs . , .
, . , . . .
, . , , .