public class Value {
public class Value {
private int m_value;
public Value() { m_value = 0; }
void add(int value) { m_value += value; }
// Value sinfida do'stona reset() funksiyasini e'lon qiling
friend void reset(Value &val1);
};
// reset() funktsiyasi endi Value sinfining do'stidir
void reset(Value &val)
{
// Va biz Value sinfining yopiq a'zolariga kirish huquqiga egamiz
val.m_value = 0;
}
Sinfning do'st funktsiyasi ushbu sinf doirasidan tashqarida aniqlanadi, lekin u sinfning barcha shaxsiy va himoyalangan a'zolariga kirish huquqiga ega. Do'st funktsiyalari prototiplari sinf ta'rifida ko'rinsa ham, do'stlar a'zo funktsiyalari emas.
Istisnolardan foydalanish
bu dasturning muntazam oqimini saqlab qolish uchun ish vaqti xatolarini hal qilishning samarali vositalaridan biri. Java Exception Handling - bu ClassNotFoundException, IOException, SQLException, RemoteException va boshqalar kabi ish vaqti xatolarini boshqarish mexanizmi.
Istisno - bu dasturni bajarish jarayonida, ya'ni ishga tushirish vaqtida yuzaga keladigan, dastur ko'rsatmalarining normal oqimini buzadigan kiruvchi yoki kutilmagan hodisa. Istisnolar dastur tomonidan ushlanishi va hal qilinishi mumkin. Usul ichida istisno sodir bo'lganda, u ob'ektni yaratadi. Ushbu ob'ekt istisno ob'ekti deb ataladi. Unda istisno haqidagi ma'lumotlar, masalan, istisnoning nomi va tavsifi va istisno sodir bo'lgan dasturning holati mavjud
Istisno yuzaga kelishining asosiy sabablari
Foydalanuvchi noto‘g‘ri kiritishi
Qurilma xatosi
Tarmoq ulanishining yo'qolishi
Jismoniy cheklovlar (disk xotirasi yo'q)
Kod xatolari
Mavjud bo'lmagan fayl ochilmoqda
…
Dostları ilə paylaş: |