raph1328 ha scritto:
in C# attraverso checked, si può ottenere un OverflowException da un’operazione matematica, qual è il suo corrispettivo Java?
Mi spiace, non c'è un corrispettivo, nel senso che in Java gli operatori matematici
non lanciano eccezioni in caso di overflow/underflow.
C'è il caso particolare in cui se una divisione è "intera" e sta dividendo per 0, allora viene lanciato ArithmeticException. Ma è l'unico caso mi pare per gli operatori matematici.
Da Java 8 la classe Math ha un po' di metodi in più tipo addExact, decrementExact, multiplyExact, ecc... che possono lanciare ArithmeticException se c'è overflow. Ma ripeto, solo da Java 8.
L'eventualità di overflow comunque è testabile a priori, ci possono essere librerie esterne che hanno metodi di utilità per testarlo o comunque per fare l'operazione un po' come quei metodi da Java 8.
Ad esempio c'è la libreria Google Guava con la sua classe
IntMath che ha metodi checkedAdd, ecc...