Javada sinif(Class) və obyekt(object) anlayışı.
Javada sinif,obyekt və referans,instans anlayışı.
Class.Javada class(sinif) obyekt-yönümlü programlaşdırmanın(OOP) əsas komponentlərindəndir.Class obyekt(obyektin nə olduğuna gələcik)yaratmaq üçün bir şablondur. Biz hansı obyektləri yaradacağımızın qərarını classda veririk.Classlarda fieldlər,methodlar,constructorlar(constructora da gələcik) olur.

Şəkildə fieldlər: name,gender və agedir.Fieldlər obyektlərin məlumatlarını təyin edir.Adı,cinsi,yaşı və s.
Şəkildə göstərilən method isə roardır.Aslanın hansı davranışı edə bildiyini göstərir.Əlavə olaraq qaçmaq,hoppanmaq kimi davranışları da daxil edə bilərsiz.
Object.OOP-nin bir digər əsas prinsiplərindən biri obyekttir.Obyekt sinifin(class) konkret bir nümunəsi(instance) kimi yaddaşda yaradılan real varlıqdır.Obyekt sinifdə müəyyən ettiyimiz fildlər və davranışlara müəyyən bir dəyər ötürərərək istifadəyə hazrılanmasıdır.
Obyektlərin əsas xüsusiyyətləri:
- State(məlumat)-obyektin hazırki vəziyyətin təyin edən xüsusiyyətlər və ya atributlardır.Məs: ad,yaş,rəng və s.
- Behaviour(davranış)-Obyektin edə bildiyiy hərəkətləri təyin edir.Məs qaçmaq,hoppanmaq,nərə çəkmək və s.
- İdentity(identitilik)-Hər bir obyekt yaddaşda müəyyən yer tutur.Obyektlər bir birindən yaddaşda tuttuğu yer ilə fərqlənir.

Bu nümunədə əvvəlcə sinif yaradılıb,sonra ona əsasən obyektlər.Obyektlər sinifin instansıdır da deyilir.İnstance real nümunə deməkdir.Yəni sinifi işləməyə hazır vəziyyətə gətirən dəyərləri müəyyənləşdirilmiş,real nümunə nəzərdə tutulur.
Obyektlər compile zamanı(kodu yazarkən) yox,run zamanı yaranır..Yəni biz kodu yazıb qutardıqdan sonra run edirik və kod yuxardan aşağı oxunaraq gəlir və new kəliməsini görəndə RAM-da(rama daxildir heap,stack,static yaddaş və s.) həmin obyekti yaradır.Və heap yaddaşa atılır. Yəni new Lion() heap yaddaşdadır.Lakin obyekt özü yəni lion isə stackda saxlanılır.Səbəb isə budur ki, lion, Lion() un referans dəyəridir.
Referance.Obyektin referansı dedikdə, Java proqramlaşdırmasında obyektin yaddaşda harada yerləşdiyini göstərən bir göstərici (pointer) və ya adres nəzərdə tutulur. Obyektin referansı obyektin özünü deyil, obyektin yaddaşda yerləşdiyi yerə çıxışı təmin edən bir vasitədir. Bu, obyektin idarə edilməsi və ona müraciət olunması üçün istifadə olunur.
• Referans, heap yaddaşında yaradılmış obyektə işarə edən dəyişəndir.
• Yəni, obyektin özü heap yaddaşında yerləşir, lakin referans həmin obyektin harada olduğunu göstərən məlumatı saxlayır.
• Referans stack yaddaşında saxlanılır.
1. Lion lion – lion referans dəyişənidir və obyektin yaddaşdakı yerini göstərir.
2. new Lion() – heap yaddaşında yeni bir obyekt(instance) yaradır.
3. lion.name– referans vasitəsilə obyektin sahəsinə (field) çıxış təmin edir.
Yəni Lion() instans(instance) dəyişən,lion isə onun referansıdır(reference).
Misal: Birdən çox referans obyektə işarə edə bilər.
Lion lion1 =new Lion();
Lion lion2= lion1; // lion2 referansı, eyni obyektə işarə edir
lion1.name = “Alex”;
System.out.println(lion2.name); // “Alex” yazdırır, çünki hər iki referans eyni obyektə işarə edir.
Bu nümunədə: lion1 və lion2 referansları eyni obyektə işarə edir.Hər iki referans obyektin məlumatlarını dəyişdirə və oxuya bilər.
Referansın əsas xüsusiyyətləri:
1. Null Referans:
• Əgər bir referans heç bir obyektə işarə etmir, o zaman null olaraq təyin olunur.
Lion lion=null //referance heç bir obyektə işarə etmir
2. Garbage Collection (Tullantı Yaddaş İdarəsi):
• Bir obyektə heç bir referans işarə etmirsə, obyekt avtomatik olaraq Garbage Collector tərəfindən silinir.
3. Referans vasitəsilə çıxış:
• Obyektin metodlarına və dəyişənlərinə referans vasitəsilə çıxış edilir:
lion.name=”Alex”; //referans vasitəsi ilə sahəyə çıxış
lion.roar(); // referans vasitəsi ilə metoda çıxış
Nəticə:
Referans, obyektin yaddaşdakı yerinə işarə edir və obyektin özünü idarə etmək üçün istifadə olunur.
메타데이터
- post_id
- 10678c3ca8a3
- slug
- javada-sinif-class-və-obyekt-object-anlayışı-10678c3ca8a3
- url
- https://medium.com/@KafkaAcademy/javada-sinif-class-v%C9%99-obyekt-object-anlay%C4%B1%C5%9F%C4%B1-10678c3ca8a3
- canonical_url
- https://medium.com/@KafkaAcademy/javada-sinif-class-v%C9%99-obyekt-object-anlay%C4%B1%C5%9F%C4%B1-10678c3ca8a3
- author_url
- https://medium.com/@KafkaAcademy
- status
- ok
- fetched_at
- 2026-08-30 03:23:26