1. Nöqtəli vergül unutmaq
Java-da yeni proqramçıların ən çox buraxdığı səhv - nöqtəli vergüldür. Daha doğrusu, onun lazım olan yerdə olmamasıdır.
Metod daxilindəki hər bir əmrin sonunda nöqtəli vergül olmalıdır. Nöqtəli vergül - bu əmrlərin ayıracıdır: biz bununla Java-kompilyatoruna bir əmrin harada bitdiyini və növbəti əmrə harada başlanıldığını anlayırıq.
Səhv vəziyyətlərin nümunələri:
Səhv kod | Düzəldilmiş kod |
---|---|
|
|
|
|
|
|
2. Dırnaq işarələrini bağlamağı unutdunuz
Java-da yeni başlayanların ən populyar ikinci səhvi — kodda mətn yazıb dırnaq işarələrini bağlamağı unutmaqdır.
Koddakı hər bir mətn iki tərəfdən qoşa dırnaq işarəsi ilə əhatə olunmalıdır — «"». Yeni başlayan proqramçılar çox vaxt mətnin əvvəlində dırnaq işarəsi yazır, amma sonda bağlamağı unudurlar.
Belə vəziyyətlərə misallar:
Xətalı kod | Düzəldilmiş kod |
---|---|
|
|
|
|
|
|
3. Sətirləri birləşdirərkən "+" işarəsi unudulub
Sətirlərlə işləmək zamanı ən çox rast gəlinən səhvlərdən biri - sətirləri birləşdirərkən "+" işarəsini yazmağı unutmaqdır. Bu səhv xüsusilə kodda uzun ifadədə mətn və dəyişənlər birləşdirilərkən tez-tez baş verir.
Belə vəziyyətlərin nümunələri:
Səhv kod | Düzəldilmiş kod |
---|---|
|
|
|
|
|
|
4. Əyri mötərizələri bağlamağı unutmaq
Bu çox yayılmış bir səhvdir. Adətən bu iki halda baş verir:
Birinci hal: hardansa kodu kopyalamağa qərar verdiniz və təsadüfən bəzi əyri mötərizələri buraxdınız. Və ya ikinci hal: açıq mötərizəyə uyğun bağlayıcı mötərizə yerləşdirməyə diqqət etmirsiniz.
Bu cür səhvlərdən qaçmaq üçün proqramlaşdırmaya yeni başlayanlara adətən açıq mötərizənin altında bağlayıcı mötərizəni yazmaq tövsiyə olunur.
Nümunələr:
Səhv olan kod | Düzəliş edilmiş kod |
---|---|
|
|
|
|
5. Dairəvi mötərizələri yazmağı unutmaq
Ən çox bu səhvi, oxşar hallarda dairəvi mötərizələrin məcburi olmadığı proqramlaşdırma dillərini bilən proqramçılar edirlər.
Birinci variant — metod çağırışının sonunda mötərizəni sadəcə unutdular:
İkinci variant — if-else
operatorunun şərtini mötərizəyə salmağı unutdular.
Nümunələr:
Xəta ilə kod | Düzgün kod |
---|---|
|
|
|
|
6. Metod main
-in başlığı səhv yazılıb
Metod main
-in bəxtindən nə yamansılıqlar keçməyib, necə yazılmır ki. Yəqin ki, yeni başlayanlar heç nəyi bu qədər təhqir etmirlər bu bədbəxt metodu qədər. Əsas isə budur ki, hər dəfə təəccüblənirlər: bəs nə üçün proqramımız işləmir?
Və əlbəttə ki, problem proqramçıda deyil, proqramda, kompilyatorda, validatorda, Java-maşında olur. Günahkarların siyahısını sonsuz davam etmək olar.
Nümunələr:
Səhv kod | İzah |
---|---|
|
public yazılmayıb |
|
static yazılmayıb |
|
static və void yazılmayıb |
|
public və static yazılmayıb |
|
[] yazılmayıb |
|
String[] args yazılmayıb |
|
void əvəzinə int yazılıb |
7. Faylın adı sinfin adından fərqlənir
Standarta əsasən, Java-da bütün siniflər elə bir faylda saxlanılmalıdır ki, faylın adı sinfin adı ilə uyğun olsun. Və artıq əvvəlcədən deyildiyi kimi, burada hərf ölçüsü də əhəmiyyət kəsb edir:
Faylın adı | Sinfin adı | Qeyd |
---|---|---|
|
|
Hər şey qaydasındadır
|
|
|
Faylın adında artıq s hərfi |
|
|
Faylın adı kiçik hərflərlədir |
|
|
Fayl genişlənməsi txt əvəzinə java |
|
|
Sinfin adı kiçik hərflərlədir
|
Əslində, java genişlənməsinə malik faylda bir neçə sinif elan edilə bilər, amma onlardan yalnız birinin adı qarşısında public
sözü ola bilər. Bax onun adı faylın adı ilə uyğun gəlməlidir.
Java faylında həmişə bir sinif olmalıdır ki, onun adı faylın adı ilə uyğun olsun və onun public
modifikatoru olsun. Misal:
Solution.java |
---|
|
Java dilində sinifləri siniflər daxilində yazmağa da icazə verilir. Bu da yuxarıda qeyd olunan məhdudiyyəti aşmaq üsullarından biridir. Faylda adı faylın adı ilə uyğun olan public sinif (modifikator public
) elan edildikdə bu public sinif daxilində istənilən qədər sinif elan etmək olar. Amma bunlar artıq adi deyil, daxili və ya daxil edilmiş siniflər olacaq. Misal:
Solution.java |
---|
|
8. package
yazmağı unutmusunuz
Proqramlarda adətən minlərlə class olur, onların hər birinə sadə, anlaşılan və unikal adlar seçmək çətindir. Buna görə də Java-da bütün class-lar paketlər üzrə qruplaşdırılır — package
. Eynilə faylların qovluqlar üzrə qruplaşdırıldığı kimi.
Ona görə hər class-ın başlanğıcında onun mənsub olduğu paketi yazmaq lazımdır. Məsələn
Paket olmadan kod | Düzəldilmiş nümunə |
---|---|
|
|
9. import
əlavə etməyi unutmuşuq
Əgər biz proqramımızda hansısa başqa bir class istifadə etmək istəyiriksə, bizim iki variantımız var: hər dəfə kodumuzda həmin class-ın adından öncə onun paket adını yazmalıyıq. Və ya bir dəfə həmin class-ın tam adını import
sözü ilə birlikdə yaza bilərik.
Nümunə:
Import istifadə edilmədən | Import istifadə edilərək |
---|---|
|
|
Hər iki variant işləkdir, amma əgər siz kodunuzda sadəcə Scanner
yazıb import
əlavə etməsəniz, kompilyator hansı paketdən Scanner
class-ını götürməli olduğunu anlaya bilməyəcək və proqramınızı kompilyasiya etməyəcək.
GO TO FULL VERSION