Ob'ekt va misol o'rtasidagi farq

Ob'ekt va misol o'rtasidagi farq
Ob'ekt va misol o'rtasidagi farq

Video: Ob'ekt va misol o'rtasidagi farq

Video: Ob'ekt va misol o'rtasidagi farq
Video: 4-dars(lesson). Polymorphism with Inheritance. Meros bilan polimorfizm. 2024, Iyul
Anonim

Ob'ekt va misol

Obyektga yoʻn altirilgan dasturlash (OOP) eng mashhur dasturlash paradigmalaridan biridir. OOPda asosiy e'tibor hal qilinishi kerak bo'lgan muammoni real dunyo elementlari nuqtai nazaridan o'ylashga va muammoni ob'ektlar va ularning xatti-harakatlari nuqtai nazaridan ifodalashga qaratilgan. OOP ning asosiy jihatlarini qo'llab-quvvatlaydigan ko'plab dasturlash tillari (OOP tillari deb ataladi) asosiy dasturlash vositasi sifatida sinfga ega. Ular sinfga asoslangan deb ataladi. Sinflar real dunyo ob'ektlarining mavhum tasviridir. Sinflar atributlar deb ataladigan xususiyatlarga ega. Atributlar global va misol o'zgaruvchilari sifatida amalga oshiriladi. Sinflardagi usullar ushbu sinflarning xatti-harakatlarini ifodalaydi yoki belgilaydi. Sinflarning usullari va atributlari sinf a'zolari deb ataladi. Oddiy so'zlar bilan aytganda, sinf - bu aniq hayot ob'ekti uchun chizma yoki shablon. Shunday qilib, ob'ekt - bu ushbu sxema bo'yicha kerakli ma'lumotlarni saqlash uchun ishlatiladigan xotira bloklari. Namuna ob'ektga murojaat qiluvchi xotira blokidir.

Obyekt nima?

Ob'ektlar sinfni yaratish natijalaridir. Instantiation - bu loyihani olish va har bir atribut va xatti-harakatni aniqlash jarayoni, natijada olingan ob'ekt haqiqatda real hayot ob'ektini ifodalaydi. Ob'ekt - o'zgaruvchilar, usullar yoki funktsiyalar va boshqalar kabi ma'lumotlarni saqlash uchun ajratilgan va doimiy xotira blokidir. Ob'ekt Java dasturlash tilida yangi operator yordamida yaratilgan. Misol uchun, agar Car deb nomlangan sinf mavjud bo'lsa, u holda Car sinfining ob'ektini yaratish uchun quyidagilardan foydalanish mumkin.

yangi Avtomobil();

Bu yerda yangi operator tomonidan Avtomobil obyekti yaratiladi va ob'ektga havola qaytariladi. Yangi ob'ektni yaratish uchun Car sinfining konstruktori bilan birga yangi operator ishlatiladi. Ob'ektning ishlash muddati uning konstruktoriga qo'ng'iroq qilishdan boshlab, uni yo'q qilish vaqtigacha boshlanadi. Ob'ektga havola qilinmasa, u axlat yig'uvchi tomonidan olib tashlanadi/yo'q qilinadi.

Masalan nima?

Instance - ob'ektga havolani o'z ichiga olgan xotira blokidir. Boshqacha qilib aytganda, Instance ob'ekt saqlanadigan boshlang'ich xotira blokining manzilini saqlaydi. Aslida, ob'ekt xotirasi maydonining boshlanishiga kirish uchun namuna nomidan foydalanish mumkin. Boshlang'ich xotiradan ofsetlar ish vaqti mexanizmi tomonidan hisoblab chiqiladi, shuning uchun biz individual ma'lumotlar yoki usullarga havolalar saqlanadigan joyga borishimiz mumkin. Quyidagi Java kodi snipped avtomobil obyektining namunasini yaratish uchun ishlatilishi mumkin.

Car myCar=new Car();

Yuqorida aytib o'tilganidek, yangi operator Car ob'ektini yaratadi va unga havolani qaytaradi. Ushbu ma'lumotnoma avtomobil turidagi myCar o'zgaruvchisida saqlanadi. Shunday qilib, myCar – yaratilgan Avtomobil obyektining namunasi.

Ob'ekt va misol o'rtasidagi farq nima?

Ob'ekt - bu ob'ektni boshqa ob'ektlardan ajratib turadigan haqiqiy ma'lumotlarni saqlaydigan qo'shni xotira bloki, misol esa ob'ektga havoladir. Bu ob'ekt saqlanadigan manzilni ko'rsatadigan xotira blokidir. Ikkita misol bir xil ob'ektga murojaat qilishi mumkin. Ob'ekt va misolning ishlash muddati o'zaro bog'liq emas. Shuning uchun misol null bo'lishi mumkin. Ob'ektga ishora qiluvchi barcha misollar olib tashlanganidan keyin ob'ekt yo'q qilinadi.

Tavsiya: