Java-da statik və final arasındakı fərq

Mündəricat:

Java-da statik və final arasındakı fərq
Java-da statik və final arasındakı fərq

Video: Java-da statik və final arasındakı fərq

Video: Java-da statik və final arasındakı fərq
Video: Java'da Statik ve Statik Olmayan Değişken ve Metotların Hafıza Yönetimi 2024, Noyabr
Anonim

Əsas Fərq – Java-da statik və final

Hər bir proqramlaşdırma dilinin xüsusi sintaksisi var. Proqramçı proqramlar yazarkən bu sintaksislərə əməl etməlidir. Proqramlaşdırma dillərinin açar sözləri tapşırıqlara uyğun olaraq xüsusi mənalara malikdir. Onlar proqramlaşdırma dili tərəfindən təmin edilir və istifadəçi tərəfindən müəyyən edilmiş dəyişənlər, metodlar, siniflər və s. üçün istifadə edilə bilməz. Statik və final Java-da iki açar sözdür. Bu məqalə Java-da statik və final arasındakı fərqdən bəhs edir. Java-da statik və final arasındakı əsas fərq ondan ibarətdir ki, statik, sinfin hər hansı bir obyektindən asılı olmayaraq istifadə edilə bilən sinif üzvünü müəyyən etmək üçün istifadə olunur, final isə sabit dəyişəni və ya ləğv edilə bilməyən bir metodu və ya bir sinfi elan etmək üçün istifadə olunur. miras qala bilməz.

Java-da statik nədir?

Sinif məlumat üzvlərindən (atributlarından) və metodlardan ibarətdir. Metodları çağırmaq üçün həmin xüsusi sinfin obyekti olmalıdır. Metod statik olaraq elan edildikdə, həmin metodu çağırmaq üçün obyekt yaratmağa ehtiyac yoxdur. Metod sinif adından istifadə etməklə çağırıla bilər. Aşağıdakı proqrama baxın.

Java-da statik və final arasındakı fərq
Java-da statik və final arasındakı fərq

Şəkil 01: Statik dəyişənlər və statik Metodlu Java Proqramı

Yuxarıdakı proqrama əsasən, sinif A rəqəm dəyişənini və göstərmə metodunu ehtiva edir. Hər ikisi statik üzvdür. Buna görə də, nömrə dəyişəninə və ekran metoduna daxil olmaq üçün obyekt yaratmaq lazım deyil. Proqramçı nömrəni çap etmək və metod ekranına zəng etmək üçün birbaşa sinif adını yaza bilər. Deməli, obyekti instantlaşdırmağa ehtiyac yoxdur. Əgər rəqəm dəyişəni və göstərmə üsulu qeyri-statikdirsə, onda A tipli obyekt olmalıdır.

Java_Şəkil 02-də statik və final arasındakı fərq
Java_Şəkil 02-də statik və final arasındakı fərq

Şəkil 02: Statik Blokdan İstifadə

Yuxarıdakı proqramda statik blok və əsas metod var. Statik blok sinif yükləndikdə çağırılır. Buna görə də statik blokdakı ifadə əsas blokdakı ifadədən əvvəl yerinə yetirilir. Çoxlu statik bloklar varsa, onlar ardıcıllıqla yerinə yetiriləcək.

Javada final nədir?

Proqramda müxtəlif növ dəyişənlər ola bilər. int x=1 kimi dəyişən varsa; daha sonra proqramda bu dəyişən dəyər başqa bir dəyərə dəyişdirilə bilər. Yekun elan edilən və dəyərlə işə salınan dəyişən proqramda sonra dəyişdirilə bilməz.

Java_Şəkil 03-də statik və final arasındakı fərq
Java_Şəkil 03-də statik və final arasındakı fərq

Şəkil 03: Son Dəyişən və Mirasla Proqram

Yuxarıdakı proqrama görə, x yekun dəyişəndir. Ona 5 dəyəri təyin olunub. O, yekun olaraq elan edildiyi üçün başqa bir dəyər dəyişdirilə bilməz. Java obyekt yönümlü proqramlaşdırmanı (OOP) dəstəkləyir. OOP-nin bir sütunu polimorfizmdir. Polimorfizmin bir növü üstünlük təşkil edir. A sinfi nümayiş metoduna malikdir. B sinfi A sinfini genişləndirir və onun özünün göstərmə üsulu var. B tipli bir obyekt yaratdıqda və ekran metodunu çağırarkən çıxış kimi “B” çap olunacaq. A sinifinin göstərmə üsulu B sinifinin göstərmə üsulu ilə əvəzlənib.

Əgər proqramçı metodu ləğv etməkdən çəkinməlidirsə, o, həmin metod üçün son açar sözündən istifadə edə bilər. A sinfində göstərmə metodu yekundursa, B-də göstərmə metodu xəta verəcək, çünki bu metodu ləğv etmək mümkün deyil.

Java_Şəkil 04-də statik və final arasındakı fərq
Java_Şəkil 04-də statik və final arasındakı fərq

Şəkil 04: Metodda son açar söz

OOP-un digər sütunu mirasdır. Bu, artıq mövcud kodun yenidən istifadəsinə kömək edir. Yeni sinif mövcud sinifdən uzada bilər və mövcud sinfin məlumat üzvlərindən və metodlarından istifadə edə bilər. Bir sinfin miras qalmasını dayandırmaq tələb olunarsa, proqramçı 'final' açar sözündən istifadə edə bilər. Aşağıdakı proqrama baxın.

Ke3y Java-da statik və final arasındakı fərq
Ke3y Java-da statik və final arasındakı fərq

Şəkil 05: Sinifdə son açar söz

Yuxarıdakı proqrama əsasən A sinfi yekun elan edilir. B sinfi A-nı genişləndirdikdə xəta verir, çünki A sinfi yekun elan edilir. O, digər siniflər tərəfindən miras alına bilməz.

Java-da statik və final arasındakı oxşarlıq nədir?

Həm statik, həm də final Java-da açar sözlərdir

Java-da statik və final arasındakı fərq nədir?

Java-da statik vs final

Statik açar söz, üzv dəyişənin və ya metodun aid olduğu sinfin nümunəsini tələb etmədən əldə edilə biləcəyini bildirir. Son açar söz yalnız bir dəfə təyin edilə bilən obyekti bildirir.
Dəyişənlər
Statik dəyişənlər yenidən işə salına bilər. Son dəyişənlər yenidən işə salına bilməz.
Üsullar
Digər statik üsullarla çağırıla bilər və yalnız sinfin statik üzvlərinə daxil ola bilər. Son üsullar ləğv edilə bilməz.
Sinif
Statik sinif obyekti yaradıla bilməz. O, yalnız statik üzvlərdən ibarətdir. Son sinif digər siniflərə miras qala bilməz.
Blok
Statik açar söz blokda istifadə edilə bilər. Son açar söz blokla istifadə edilmir.

Xülasə – Java-da statik və final

Bu məqalə Java-da statik və yekun kimi iki açar sözü müzakirə etdi. Java-da statik və final arasındakı fərq ondan ibarətdir ki, statik, sinfin hər hansı bir obyektindən asılı olmayaraq istifadə edilə bilən sinif üzvünü müəyyən etmək üçün istifadə olunur, final isə sabit dəyişəni və ya ləğv edilə bilməyən bir metodu və ya bir sinfi elan etmək üçün istifadə olunur. miras alınsın.

Tövsiyə: