যখন একটি ভেরিয়েবলে সেটি জন্য অনুমোদিত ন্যূনতম মান থেকে কম একটি ভ্যালু অ্যাসাইন করা হয়, তখন একটি আন্ডারফ্লো ঘটে। জাভাতে আন্ডারফ্লো হলে JVM কোনো এক্সেপশন থ্রো করে না এবং এটি প্রোগ্রামারের দায়িত্ব আন্ডারফ্লো কন্ডিশন হ্যান্ডেল করা।
উদাহরণ
public class UnderlowTest { public static void main(String[] args) { int num1 = -2147483648; int num2 = -1; System.out.println("Number 1: " + num1); System.out.println("Number 2: " + num2); long sum = (long)num1 + (long)num2; if(sum < Integer.MIN_VALUE) { throw new ArithmeticException("Underflow occurred!"); } System.out.println("The sum of two numbers : " + (int)sum); } }
আউটপুট
Number 1: -2147483648 Number 2: -1 Exception in thread "main" java.lang.ArithmeticException: Underflow occurred! at UnderlowTest.main(UnderlowTest.java:9)