ماڈیول اسباق (1/2)
کیچ بلاکس کی کوشش کریں۔
جاوا میں، رن ٹائم کی غلطیوں کو استثنیات کا استعمال کرتے ہوئے ہینڈل کیا جاتا ہے۔ استثنیٰ ہینڈلنگ ہمیں غیر معمولی حالات کو روکنے اور پروگرام کو کریش ہونے سے روکنے کی اجازت دیتی ہے۔
try-catch ڈھانچہ
ممکنہ استثناء کو سنبھالنے کے لیے، ہم خطرناک کوڈ کو try بلاک میں بند کر دیتے ہیں۔ اگر try بلاک کے اندر کوئی خرابی واقع ہوتی ہے، تو JVM اس پر عمل درآمد روک دیتا ہے اور استثناء کو سنبھالنے کے لیے مماثل catch بلاک کی تلاش کرتا ہے۔
try {
int result = 10 / 0; // Generates ArithmeticException
System.out.println("This will not be printed");
} catch (ArithmeticException e) {
System.out.println("Arithmetic error occurred: " + e.getMessage());
}finally بلاک
finally بلاک اختیاری ہے اور ہمیشہ عمل میں لایا جاتا ہے، قطع نظر اس سے کہ کوئی استثنا دیا گیا ہو۔ یہ وسائل جاری کرنے یا صفائی کے کام انجام دینے کے لیے مثالی ہے۔
try {
System.out.println("Executing logic");
} catch (Exception e) {
System.out.println("Error");
} finally {
System.out.println("This block is always executed");
}پھینکنے کی مستثنیات: throw
ہم جان بوجھ کر throw کلیدی لفظ کا استعمال کرتے ہوئے ایک استثناء پھینک سکتے ہیں جس کے بعد ایک استثناء کلاس کی ایک نئی مثال ہے۔
public static void checkScore(int score) {
if (score < 0 || score > 100) {
throw new IllegalArgumentException("Score must be between 0 and 100");
}
}خود ہی آزمائیں۔
تقسیم a/b کے نتیجے میں ممکنہ ArithmeticException کو سنبھالنے کے لیے ٹرائی کیچ بلاک ڈال کر کوڈ کو مکمل کریں۔ غلطی کی صورت میں، 'Error: division by zero' پرنٹ کریں۔
اشارہ دکھائیں۔
ڈویژن آپریشن کو ایک `ٹرائی` بلاک کے اندر داخل کریں اور مطلوبہ پیغام کو پرنٹ کرتے ہوئے `ArithmeticException` کو پکڑیں۔
3 کوششوں کے بعد حل دستیاب ہے۔
ٹرائی-کیچ-آخر میں بلاک کو لاگو کرنے کے لیے کوڈ کو مکمل کریں۔ ٹرائی بلاک میں، Integer.parseInt کا استعمال کرتے ہوئے سٹرنگ str کو انٹیجر میں تبدیل کرنے کی کوشش کریں۔ کیچ بلاک میں، NumberFormatException کو روکیں اور 'غلط نمبر' پرنٹ کریں۔ آخر میں بلاک میں، 'آخر میں' پرنٹ کریں۔
اشارہ دکھائیں۔
`try { ... } کیچ (NumberFormatException e) { ... } آخر میں { ... }` بلاک ڈھانچہ لکھیں۔
3 کوششوں کے بعد حل دستیاب ہے۔
اگر فراہم کردہ عمر 18 سال سے کم ہے تو 'کم عمر' کے پیغام کے ساتھ ایک IllegalArgumentException ڈال کر checkAge کا طریقہ مکمل کریں۔
اشارہ دکھائیں۔
استثنیٰ کو فوری اور پھینکنے کے لیے `اگر (عمر < 18)` اور `تھرو نیو` کلیدی الفاظ استعمال کریں۔
3 کوششوں کے بعد حل دستیاب ہے۔