How Does Java Handle Integer Overflow