Əsas Fərq – Sarmalayıcı Sinfi ilə Java-da Primitiv Növ
Java müxtəlif proqramlar hazırlamaq üçün istifadə edilən məşhur proqramlaşdırma dilidir. Java-nın üstünlüyü ondan ibarətdir ki, o, Obyekt yönümlü proqramlaşdırmanı (OOP) dəstəkləyir. OOP istifadə edərək, proqram və ya proqram obyektlərdən istifadə edərək modelləşdirilə bilər. Bir sinif obyekt yaratmaq üçün plan kimi istifadə olunur. Proqramlaşdırmada məlumatları saxlamaq lazımdır. Məlumatları saxlamaq üçün qorunan yaddaş yerləri dəyişənlər kimi tanınır. Hər bir dəyişənin xüsusi məlumat növü var. Java dili tərəfindən təmin edilən səkkiz primitiv tip var. Onlar qısa, bayt, int, float, double, char, booleandır. Bəzən primitiv növü obyektə, obyekti isə yenidən primitiv tipə çevirmək tələb olunur. Bu çevirmə üçün sarğı sinifləri istifadə olunur. Bu məqalədə Java-da sarğı sinfi ilə primitiv tip arasındakı fərq müzakirə olunur. Java-da sarğı sinfi ilə primitiv tip arasındakı əsas fərq ondan ibarətdir ki, sarğı sinfi ibtidai növü obyektə və obyekti yenidən primitiv tipə çevirmək üçün istifadə olunur, primitiv tip isə Java proqramlaşdırma dili tərəfindən təmin edilən əvvəlcədən təyin edilmiş məlumat növüdür.
Java-da Wrapper Sinfi nədir?
Java-da Wrapper sinfi primitiv məlumat növünü obyektə və obyekti primitiv tipə çevirmək üçün istifadə olunur. Hətta primitiv məlumat növləri ilkin məlumat növlərini, Array Lists və Vectors mağaza obyektlərini saxlamaq üçün istifadə olunur. Buna görə də, çevrilmə üçün sarğı siniflərindən istifadə etmək tələb olunur. Primitiv tiplər char, bayt, short və int üçün müvafiq sarğı sinifləri Character, Byte, Short və Integer-dir. Long, float, double və boolean üçün müvafiq sarğı sinifləri Long, Float, Double və Booleandır.
Şəkil 01: Sarmalayıcı Sinifləri Primitiv Tiplərə çevirən Java Proqramı
Yuxarıdakı proqrama əsasən, inobj tam ədəd sarğı sinif obyektidir. floatobj Float sarmalayıcı sinif obyektidir. Doubleobj ikiqat sarğı sinif obyektidir. Integer obyekti intValue () istifadə edərək primitiv int-ə çevrilir. Eynilə, Float obyekti floatValue() istifadə edərək primitiv floata çevrilir. Double obyekti doubleValue () istifadə edərək primitiv cütə çevrilir. Proqramçı ifadəni int i=intobj kimi yazırsa; kompilyator daxili olaraq daxilə yazır. Value(). Sarmalayıcı sinfinin obyektinin avtomatik olaraq onun müvafiq primitiv növünə çevrilməsi prosesi qutudan çıxarma kimi tanınır. ArrayLists kimi kolleksiyalar Wrapper sinfindən istifadə edir, çünki onlar obyektləri saxlayırlar.
Java-da Primitiv Tip nədir?
İbtidai məlumat növləri Java proqramlaşdırma dili tərəfindən təmin edilən əvvəlcədən təyin edilmiş məlumat növləridir. Səkkiz primitiv növü var. Bunlar bayt, qısa, int, uzun, float, double, boolean və chardır. Bayt məlumat növü 8 bitlik imzalanmış iki tamamlayıcı tam ədədi saxlamaq üçün istifadə olunur. Qısa məlumat növü 16 bitlik imzalanmış iki tamamlayıcı tam ədədi saxlamaq üçün istifadə olunur. 32 bitlik imzalanmış iki tamamlayıcı tam ədədi saxlamaq üçün int məlumat növü, uzun məlumat növü isə 64 bitlik iki tamamlama tam ədədini saxlamaq üçün istifadə olunur. Şamandıra tək dəqiqlikli 32 bitlik üzən nöqtə dəyərini saxlamaq üçün, ikiqat isə ikiqat dəqiqlikli 64 bitlik üzən nöqtə dəyərini saxlamaq üçün istifadə olunur. Boolean doğru və ya yalanı təmsil etmək üçün istifadə olunur. Simvol tək simvolu saxlamaq üçün istifadə olunur. Bunlar Java-da səkkiz primitiv növdür.
Şəkil 02: İbtidai Tipləri Sarma Sinflərinə çevirən Java Proqramı
Yuxarıdakı proqrama əsasən, num1 int növüdür. O, 1 ədədini Integer.valueOf()-a ötürməklə Tam Ədərə çevrilir. float1 float dəyərlərini saxlaya bilər. O, float1-i Float.valueOf()-a ötürməklə Float tipinə çevrilir. Eynilə, double1 ikiqat dəyərləri saxlaya bilər. Double1-i Double.valueOf()-a ötürməklə Double tipə çevrilir. Proqramçı ifadəni Interger intobj=num1 kimi yazırsa; kompilyator daxili olaraq Integer.valueOf(num1) yazır; Primitiv növün avtomatik olaraq müvafiq sarğı sinif obyektinə çevrilməsi prosesi autoboxing kimi tanınır.
Java-da Sarmalayıcı Sinfi ilə Primitiv Tip arasındakı oxşarlıq nədir?
Həm Wrapper sinfi, həm də Java-da Primitiv Tip proqramlaşdırmada verilənləri saxlamaq üçün istifadə edilə bilər
Java-da Sarmalayıcı Sinfi ilə Primitiv Tip arasındakı fərq nədir?
Wrapper Class vs Java'da Primitiv Type |
|
Wrapper sinfi primitiv növü obyektə və obyekti primitiv tipə çevirmək mexanizmini təmin edir. | İbtidai tip Java tərəfindən təmin edilən əvvəlcədən təyin edilmiş məlumat növüdür. |
Əlaqəli Sinif | |
Obyekt yaratmaq üçün Wrapper sinfindən istifadə olunur; buna görə də onun müvafiq sinfi var. | İbtidai tip obyekt deyil, ona görə də sinfə aid deyil. |
Nul Dəyərlər | |
Sarmalayıcı sinif obyektləri null dəyərlərə icazə verir. | İbtidai məlumat növü null dəyərlərə icazə vermir. |
Tələb olunan Yaddaş | |
Tələb olunan yaddaş ibtidai növlərdən yüksəkdir. Klasterli İndeks əlavə yer tələb etmir. | Tələb olunan yaddaş sarğı sinifləri ilə müqayisədə daha azdır. |
Kolleksiyalar | |
Wrapper sinfi ArrayList və s. kimi kolleksiya ilə istifadə edilə bilər. | İbtidai növ kolleksiyalarla istifadə edilmir. |
Xülasə – Sarmalayıcı Sinfi və Java-da Primitiv Tip
Java dili səkkiz primitiv məlumat növünü təmin edir. Bəzən primitiv tipləri obyektə çevirmək və həmçinin obyektləri yenidən primitivlərə çevirmək tələb olunur. Bu tapşırığı yerinə yetirmək üçün sarğı siniflərindən istifadə edilə bilər. Java-da sarğı sinfi ilə primitiv tip arasındakı fərq ondan ibarətdir ki, sarğı sinfi ibtidai növü obyektə və obyekti yenidən primitiv tipə çevirmək üçün istifadə olunur, primitiv tip isə Java proqramlaşdırma dili tərəfindən təmin edilən əvvəlcədən təyin edilmiş məlumat növüdür.