Menu
Coddy logo textTech

זריקת חריגות

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Java של Coddy. שיעור 42 מתוך 59.

מילת המפתח throw ב-Java מאפשרת לך לזרוק חריגה באופן מפורש. הנה המבנה הבסיסי:

throw new ExceptionType("Error message");

הרכיבים הם:

  • throw: מילת מפתח לזריקת חריגה
  • new ExceptionType: יוצר חריגה חדשה (כמו IllegalArgumentException)
  • "Error message": מתאר מה השתבש

בואו נראה את זה בפעולה:

int age = -5;
if (age < 0) {
    throw new IllegalArgumentException("Age cannot be negative");
}

לאחר ביצוע הקוד שלמעלה, התוכנית זורקת:

IllegalArgumentException: Age cannot be negative

challenge icon

אתגר

קל

צרו מתודה בשם validateAge שמקבלת שני ארגומנטים:

  1. מספר שלם (age) לאימות
  2. ערך בוליאני (strict) שקובע את כללי האימות

המתודה צריכה לזרוק חריגות בהתאם לכללים הבאים:

  • אם הגיל שלילי: זרקו IllegalArgumentException עם ההודעה "Age cannot be negative"
  • אם הגיל גדול מ-150: זרקו IllegalArgumentException עם ההודעה "Age cannot be greater than 150"
  • אם strict הוא true והגיל הוא 0: זרקו IllegalArgumentException עם ההודעה "Age cannot be zero in strict mode"
  • אם לא נזרקת חריגה: החזירו את הגיל כמחרוזת

נסו בעצמכם

import java.util.Scanner;

public class Main {
    public static String validateAge(int age, boolean strict) {
        // כתבו כאן את הקוד שלכם
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int age = Integer.parseInt(scanner.nextLine());
        boolean strict = Boolean.parseBoolean(scanner.nextLine());
        
        try {
            System.out.println(validateAge(age, strict));
        } catch (IllegalArgumentException e) {
            System.out.println(e.getMessage());
        }
    }
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

תרגלו בעצמכם: קומפיילר Java אונליין