وفئة الكتاب (book class) يجب أن تملك سنة (6) طرق (methods) وهي :
- (setbooktitle(string name : لضبط اسم الكتاب. وبالطبع سيكون نوع إعادة الطريقة هو void.
- () getbooktitle : لإعادة اسم الكتاب. وبالطبع سيكون نوع إعادة الطريقة هو ٍstring.
- (setname(string name : لضبط اسم المستعير. وبالطبع سيكون نوع إعادة الطريقة هو void.
- ()getname : لإعادة اسم المستعير. وبالطبع سيكون نوع إعادة الطريقة هو ٍstring.
- ()check : لتتحقق من توافر الكتاب , أي لو كان عدد المستعارة لم يصل إلى خمسة كتب , فإن الكتاب متوفر وإلا فإن الكتاب غير متوفر , أي لو كان عدد الكتاب المستعيرة وصل إلى خمسة فإن الكتاب غير متوفر . ولك حرية برمجته ونوع إعادته.
- (setissuedate(date : لضبط تاريخ استعارة الكتاب , بحيث تمرر للطريقة كائن تاريخ (date) حال استدعاء الطريقة . وبالطبع سيكون نوع إعادة الطريقة هو void.
- () tostring : لإرجاع سلسلة نصية عبارة عن تقرير عن الكتاب المستعار , سيكون نوع إعادة الطريقة هو ٍstring . أي سترجع هذه الطريقة سلسلة نصية عبارة هكذا “(اسم المستعير) استعار كتاب (اسم الكتاب) في (التاريخ)” , وإن لم يكن الكتاب متوفراً كأن كان الكتاب السادس فتكون السلسلة النصية هكذا “عذراُ (اسم المستعير) , (اسم الكتاب) الكتاب غير متوفر) . وهناك خطأ في السؤال في كتابة المطلوب في هذه الطريقة ، بحيث مكتوب لكل الكتب المستعيرة أي لكل الكائنات , فلا تكترثوا لهذا الخطأ .