Java xatolar


ULASHISH

Java xatolar

Hatto tajribali Java dasturchilari ham xato qiladi. Asosiysi — ularni aniqlash va tuzatishni o‘rganish!

Bu sahifalarda keng tarqalgan xatolar hamda nima noto‘g‘ri ketayotganini va uni qanday tuzatishni tushunishga yordam beradigan foydali debugging maslahatlari yoritilgan.


Java tilidagi xato turlari

Xato turi Tavsif
Kompilyatsiya vaqtidagi xato Kompilyator tomonidan aniqlanadi. Kodning ishga tushishiga yo‘l qo‘ymaydi.
Bajarilish vaqtidagi xato Dastur ishlayotgan paytda yuz beradi. Ko‘pincha dasturning ishdan chiqishiga sabab bo‘ladi.
Mantiqiy xato Kod ishlaydi, lekin noto‘g‘ri natija beradi. Topish eng qiyin xato.

Keng tarqalgan kompilyatsiya vaqtidagi xatolar

Kompilyatsiya vaqtidagi xatolar dastur sintaksis yoki tip bilan bog‘liq muammolar tufayli kompilyatsiya qilinmaganda yuz beradi.

Mana ba’zi misollar:

1) Tushib qolgan nuqtali vergul

Misol

int x = 5
System.out.println(x);

Natija:

error: ';' expected

O‘zingiz sinab ko‘ring »

Maslahat: Java har bir ko‘rsatma oxirida nuqtali vergul bo‘lishini talab qiladi (int x = 5;).

2) E’lon qilinmagan o‘zgaruvchilar

Misol

System.out.println(myVar);

Natija:

cannot find symbol
  symbol: variable myVar

O‘zingiz sinab ko‘ring »

Maslahat: O‘zgaruvchidan foydalanishdan oldin uni e’lon qilishingiz shart (int myVar = 50;).

3) Mos kelmaydigan tiplar

Misol

int x = "Hello";

Natija:

incompatible types: String cannot be converted to int

O‘zingiz sinab ko‘ring »

Maslahat: Qiymat o‘zgaruvchi tipiga mos kelishiga ishonch hosil qiling (String x = "Hello";).



Keng tarqalgan bajarilish vaqtidagi xatolar

Bajarilish vaqtidagi xatolar dastur kompilyatsiya qilinsa-da, ishdan chiqqanda yoki kutilmagan tarzda ishlaganda yuz beradi.

Mana ba’zi misollar:

1) Nolga bo‘lish

Misol

int x = 10;
int y = 0;
int result = x / y;
System.out.println(result);

Natija:

Exception in thread "main" java.lang.ArithmeticException: / by zero

O‘zingiz sinab ko‘ring »

2) Massiv indeksining chegaradan chiqishi

Misol

int[] numbers = {1, 2, 3};
System.out.println(numbers[8]);

Natija:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 8 out of bounds for length 3

O‘zingiz sinab ko‘ring »


Mantiqiy xatolar

Mantiqiy xatolar kod ishlasa-da, natija siz kutgandek bo‘lmaganda yuz beradi:

Misol:

int x = 10;
int y = 2;
int sum = x - y;
System.out.println("x + y = " + sum);

Natija:

x + y = 8

O‘zingiz sinab ko‘ring »

Kutilgan natija: 12

Mantiqiy xato: Kod qo‘shish o‘rniga adashib ayirish amalini bajaradi.

Maslahat: Mantiqiy kamchiliklarni aniqlash uchun dasturingizni turli kiruvchi ma’lumotlar bilan sinab ko‘ring (buning o‘rniga x + y’dan foydalanib ko‘ring). Bu nosozliklarni tuzatish (debugging) jarayonining bir qismi bo‘lib, u haqida keyingi bobda batafsil bilib olasiz.


Xatolarning oldini olish uchun foydali odatlar

  • Ma’noli o‘zgaruvchi nomlaridan foydalaning
  • Xato xabarini diqqat bilan o‘qing. Unda qaysi qator ko‘rsatilgan?
  • Tushib qolgan nuqtali vergullar yoki figurali qavslarni tekshiring
  • O‘zgaruvchi yoki metod nomlaridagi imlo xatolarini qidiring

Keyingi bobda kodingizdagi nosozliklarni tuzatishni (debug) — dasturingizdagi xatolarni qanday topish va tuzatishni o‘rganasiz.


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!