1. Sözlərin siyahısı
Java dilində, eləcə də digər proqramlaşdırma dillərində, xüsusi məna daşıyan sözlər var. Məsələn, return
və ya if
və ya while
. Bu cür sözlər açar sözlər (keywords) adlanır və Java dili tərəfindən rezerve olunur.
Bu sözləri dəyişən adları, metod adları və ya sinif adları kimi istifadə edə bilməzsiniz. Kompilyator onları həmişə dəqiq müəyyən edilmiş şəkildə emal edəcək. Java-da cəmi belə sözlərin sayı 54
.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Bəzilərini artıq bilirsiniz, digərləri barədə isə indi danışacağıq.
2. Primiv Tiplər
Böyük ehtimalla, artıq yadda saxlamısınız ki, Java-da 8 primitiv tip var və hər birinin özünəməxsus bir açar sözü var:
byte
short
int
long
char
float
double
boolean
void
Əgər yetərincə maraqlısınızsa, çox güman ki, bir dəyişəni int adı ilə adlandırmağa cəhd etmisiniz. Təbii ki, bu alınmayıb. Bunun səbəbi isə primitiv tiplərin adlarının rezerv edilmiş sözlər olmasıdır.
Bundan əlavə, void
tipini də bu kateqoriyaya daxil etmək olar.
3. Dövrlər və Şaxələnmələr
Dövrlər və şaxələnmələr də bizə kifayət qədər geniş açar sözlər siyahısı təqdim edir:
if
else
switch
case
default
while
do
for
break
continue
Sadəcə 10 söz kifayətdir ki, dil müxtəlif növdə dövrləri, şaxələnmələr, dövrün dayandırılmasını idarə edən operatorları (break
və continue
) və çoxsaylı şaxələnmələri (switch
) təmin etsin. Bu açar sözlərin hamısı ilə siz artıq tanışsınız.
4. İstisnalar
İstisnalar bizə 5 əsas söz verir:
try
catch
finally
throw
throws
Bu try-catch-finally
bloku. İstisnalar atmaq üçün operator — throw
, və checked
-istisnalar mexanizmini dəstəkləmək üçün throws
əsas sözü istifadə olunur.
Yaxşı xəbər: siz artıq istisnalardakı bütün əsas sözlərlə tanışsınız, buna görə də istisnalarla işin əksər hissəsini artıq bilirsiniz.
5. Görünürlük sahələri
Cəmi üç əsas söz var və siz artıq onlar ilə tanışsınız
private
protected
public
public
metodu/ dəyişəni/ sinifi proqramın istənilən yerindən açıq edir.
private
metodu/ dəyişəni/ sinifi proqramın hər hansı yerindən istifadəyə qadağan edir. Yalnız həmin metodun olduğu sinif daxilində icazə verilir ki, bu da private
modifikatoru ilə qeyd olunub.
protected
, private
kimi işləyir, amma əlavə olaraq metod/ dəyişən/ sinifə miras alınmış siniflərdən də müraciət etməyə imkan verir. Bu modifikatorun üstünlükləri OOP və miras haqqında daha dərindən anlayış əldə etdiyiniz zaman daha aydın olacaq.
6. Siniflərlə İş
Bu kateqoriyaya 11 açar söz daxildir:
class
interface
enum
import
package
extends
implements
static
final
abstract
default
Bunları dörd qrupa bölmək olar.
Birinci qrup — siniflərin yaradılması: class
, interface
və enum
. Class və enum açıqlanması ilə artıq tanışsınız. interface
açar sözü interfeyslər adlanan başqa bir "sinif növü" yaratmaq üçün istifadə olunur.
İkinci qrup — artıq sizə tanış olan package və import açar sözləri. Package fayldakı sinifin paketini təsvir etmək üçün istifadə olunur. import
isə bizim sinifimizdə başqa siniflərin qısa adlarından istifadə etmək üçün istifadə olunur.
extends
və implements
açar sözləri irsiyyətin təsviri üçün istifadə olunur. Bunlara Java Core kvestinin əvvəlində baxacaqsınız.
Və nəhayət, son qrup — static
, final
, default
və abstract
modifikatorlarıdır. static
və final
haqqında artıq bir az məlumatınız var, abstract
açar sözü isə sinifi və ya metodu abstrakt etmək üçün istifadə olunur. Daha ətraflı — Java Core kvestində irsiyyəti öyrənərkən.
7. Obyektlər və dəyişənlərlə işləmə
Obyektlər, metodlar və dəyişənlərlə işləmək üçün daha 6 açar söz mövcuddur.
new
instanceof
this
super
return
var
(Java 10-dan başlayaraq)
new
operatoru yeni obyektlər yaratmaq üçün istifadə olunur — bunu artıq bilirsiz.
instanceof
operatoru müəyyən dəyişənin müəyyən tipdə obyekt istinadını saxlayıb-saxlamadığını yoxlamaq üçün istifadə olunur. Bununla da artıq tanışsız.
this
açar sözü, sinifin dəyişənləri və metodları ilə üst-üstə düşmə (shadowing) problemlərini həll etmək üçün istifadə olunur. Bunu da öyrənmisiz.
super
açar sözü this
-ə bənzəyir, amma valideyn sinifin metodları və dəyişənlərinə müraciət etmək üçün istifadə olunur. Valideyn sinif həm də super sinif adlanır.
return
operatoru funksiyadan dəyər qaytarmaq və eyni zamanda həmin funksiyanı tamamlamaq üçün istifadə olunur.
Və nəhayət, var
— avtomatik tip çıxarışı ilə dəyişən elan etmək üçündür. Bununla da artıq tanışsınız.
8. Çoxaxınlıq (Multithreading)
Java dilində çoxaxınlıq yalnız iki söz ilə təmsil olunur.
synchronized
volatile
Bunları hətta izah etməyəcəyik. Gəlib Java Multithreading missiyasına çatanda – o zaman başlayarıq.
9. Müxtəlif
Həmçinin daha 4 unikal açar söz var:
native
transient
assert
strictfp
native
— bu, metod elanından əvvəl yazılan modifikatordur. Bu, metodu yazılan kodun Java-da yox, C++ dilində yazıldığını və Java-maşınında (və ya qoşulan DLL-kitabxanasında) yerləşdirildiyini göstərir. Java-maşını özü də, yəqin ki, artıq fərqindəsiniz, C++ dilində yazılıb. Standart kitabxanaların bir çox metodları kimi.
transient
— bu, sinif dəyişənlərinin (sinif sahələrinin) qarşısında yazılan modifikatordur. Bu, Java-maşınından obyektin sinifinin saxlanması zamanı — serializasiya prosesində dəyişəni keçməsini (yəni nəzərə almamasını) xahiş edir. Serializasiya haqqında daha çox məlumatı Java Collections qvestində öyrənəcəksiniz.
assert
— bu da C++ dilindən miras qalmışdır. Onun köməyi ilə koda əlavə yoxlamalar əlavə etmək olar (məsələn, dəyişənin null olmadığını yoxlamaq üçün). Əsas məsələ odur ki, bu, kompilyasiya mərhələsində aktivləşdirilir və ya deaktiv edilir.
Daxili test üçün bu yoxlamaların icra ediləcəyi (aktiv) bir layihə tərtib edə bilərsiniz. Və ya kompilyasiya zamanı onları söndürə bilərsiniz: istifadəçilərə təqdim ediləcək proqram versiyasını kompilyasiya edərkən.
Intel prosessorlarının əlavə dəqiqliyi və strictfp
modifikatoru haqqında isə hətta bir hekayə danışmışıq.
10. Rezerv edilib, amma istifadə olunmur
Hələ iki açar söz var ki, rezerv edilib, amma istifadə edilmir.
const
goto
Bunlar da C++ dilinin mirasıdır, burada onlar mövcuddur və istifadə edilir.
11. Açar Söz Olmayanlar
Konstantalar true
, false
və null
formal olaraq açar sözlərə aid deyildirlər. Amma, onların bütün xüsusiyyətlərinə sahibdirlər. Siz bir metodu true
və ya dəyişəni false
adlandıra bilməzsiniz. Kompilyator belə kodu başa düşməyəcək və onu kompilyasiya etməyəcək.
GO TO FULL VERSION