המחלקה
BadParam המכילה הגדרת פונקציה וירטואלית Print המדפיסה הודעת שגיאה למסך
המחלקה
BadFirstParam היורשת מהמחלקה BadParam ומכילה גם הגדרת פונקציה וירטואלית Print
המדפיסה הודעת שגיאה אחרת למסך
המחלקה
BadSecondParam היורשת מהמחלקה BadParam ומכילה גם הגדרת פונקציה וירטואלית Print
המדפיסה הודעת שגיאה אחרת למסך
הגדרת
הפונקציה F המקבלת שני פרמטרים.
אם הפרמטר הראשון שלילי - זורקת exception עם אובייקט מטיפוס BadFirstParam.
אם הפרמטר השני שלילי - זורקת exception עם אובייקט מטיפוס BadSecondParam
הגדרת
הפונקציה G המריצה את הפונקציה F בבלוק try
לאחר
מכן ממוקמת פקודת Catch המקבלת פרמטר מטיפוס הפניה ל- BadParam (תופסת גם אובייקטים
של תת המחלקות של המחלקה BadParam)
על האובייקט הנתפס מופעלת הפונקציה Print המדפיסה למסך את הודעת השגיאה המתאימה
לטיפוס האובייקט הנזרק