Because IEEE 754 specifies that division by zero for floating point numbers should result in either positive or negative infinity depending on the sign bit.

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.

* if the value of the divisor in floating-point division is 0 no exception is thrown; the value of the results are as follows: o division of a positive floating-point value: POSITIVE_INFINITY o division of a negative floating-point value: NEGATIVE_INFINITY o division of a floating-point value by -0: POSITIVE_INFINITY