-
Sinf, ob'ekt yoki maydonga kirish imkoniyatini tavsiflovchi kirish modifikatori talab qilinadi: u yo'q bo'lganda, JVM (bu universal sehr manbai) avtomatik ravishda paketga standart identifikatorni tayinlaydi.
Ikkinchi modifikatordan boshlab kirish huquqiga ega bo'lmagan modifikatorlar mavjud bo'lib, ular majburiy emas va bir-biriga zid kelishi mumkin (lekin birinchi navbatda).
-
Static modifikatori sinf, ob'ekt yoki maydonning statik ekanligini bildiradi. Lekin bu nimani anglatadi? Asosan biz uni dalalarda sinab ko'ramiz.
Statik o'zgaruvchilar sinf o'zgaruvchilari deb ataladi va shu sinfning barcha misollari uchun xosdir. Statik usullarni ular e'lon qilingan ob'ektni yaratmasdan chaqirish mumkin. Statik sinflar bir sinfni boshqasiga joylashtirishda qo'llaniladi va ichki va tashqi sinf o'rtasidagi o'zaro ta'sir printsipi usullarga o'xshaydi (bu alohida muhokama uchun mavzu). Ob'ekt ichida alohida blok sifatida ham foydalanish mumkin.
-
Yakuniy modifikator o'zgaruvchiga uning doimiy ekanligini ko'rsatadi. Usullar uchun - meros davomida ularni bekor qilib bo'lmaydi, lekin sinflar uchun bu undan meros qilib bo'lmasligidan dalolat beradi (o'zgarmas).
Statik va yakuniy modifikatorlar sinflar, ob'ektlar va maydonlar uchun qo'llaniladi. Biroq, ularning faqat ba'zilariga (yoki hatto ularning bir qismiga) tegishli bo'lgan modifikatorlar mavjud, chunki o'zgaruvchi ham, usul ham maydondir, lekin hamma modifikatorlar ikkalasiga ham tegishli emas). Agar biz o'xshashlik qilsak, tezlik uchun faqat etik va qo'lqoplarni sehrlash mumkin (tezroq harakat qilish uchun), lekin tezlik uchun shlyapani sehrlash ma'nosizdir (va Umumjahon Kuzatuv Kengashi (tuzuvchi) bunga yo'l qo'ymaydi).
-
Abstract modifikatori faqat usullar va sinflar uchun amal qiladi . Mavhum usul - bu amalga oshirilmagan (tanasi) usul.
Agar sinf mavhum deb belgilangan bo'lsa, u mavhum usullarni o'z ichiga oladi yoki bu sinf misollarini yaratishni oldini olish uchun amalga oshiriladi. Agar biz analogiya chizadigan bo'lsak, ko'rsatmalarning o'rtasida siz "Ob'ektni rang berish" sarlavhasini ko'rishingiz mumkin, undan keyin hech qanday tavsif yo'q. Bular. ushbu ko'rsatma yordamida siz ob'ekt yaratishingiz mumkin va siz uni ranglashingiz ham mumkin, ammo bu maxsus ko'rsatma qanday qilib aytilmagan (ushbu ob'ekt asosida qizil ob'ektni yaratish bo'yicha o'z ko'rsatmalaringizni yozing va uni qanday rang berishni tasvirlab bering).
-
Sinxronlashtirilgan modifikator faqat usullar uchun ishlatiladi. Uning mavjudligi uni bir vaqtning o'zida faqat bitta ip bajarishi mumkinligini ko'rsatadi. Ob'ekt ichida alohida kod bloki sifatida ham foydalanish mumkin (sinxronizatsiya ob'ektini ko'rsatgan holda).
-
Uchuvchi modifikator - faqat o'zgaruvchilar uchun . Bir vaqtning o'zida bir nechta iplar tomonidan ishlatilishi mumkin bo'lgan o'zgaruvchilar uchun foydalanish tavsiya etiladi. Bunday modifikatorga ega o'zgaruvchi har safar o'zgarganda protsessor keshidan asosiy xotiraga bir zumda ko'chiriladi, bu esa parallel oqimlarga eng so'nggi qiymatni olish imkonini beradi.
Shuni ta'kidlash kerakki, volatile o'zgaruvchiga faqat bitta ip yozishi mumkin bo'lgan hollarda qo'llaniladi, qolganlari esa faqat undan o'qiy oladi. Boshqa hollarda, sinxronlashtirilgan modifikatorni o'zgaruvchan o'zgaruvchiga yozadigan usullarga qo'shish yaxshidir.
-
Vaqtinchalik modifikator - faqat o'zgaruvchilar uchun . Ushbu modifikator ob'ektni ketma-ketlashtirishda o'tkazib yuborilishi kerak bo'lgan o'zgaruvchilarni belgilaydi (bu shunday aqlli jarayonki, printsipial jihatdan, siz bu haqda o'zingiz o'qishingiz mumkin...)*
* - Men ushbu maqolani 17-darajada yozdim va shu vaqtgacha ketma-ketlashtirish jarayon sifatida tasvirlanmagan edi, shuning uchun nusxa ko'chirish o'rniga, agar kerak bo'lsa, uni o'zingiz o'rganishingizni maslahat beraman.
- Yakuniy va o‘zgaruvchan – o‘zgaruvchilar haqida gap ketganda, biz bir vaqtning o‘zida uni yakuniy (doimiy) deb ayta olmaymiz va bir nechta iplar uni o‘zgartirish imkoniyatiga ega... Axir, u doimiy va istalgan vaqtda ip uni o‘qiy oladi. , lekin bitta ip konstantani o'zgartira olmaydi (Umumjahon Kuzatuv Kengashi bunga ruxsat bermaydi).
- Yakuniy va Abstrakt - sinflar va usullar mavhum (ko'p hollarda ularni amalga oshirish uchun aniqlashtirish zarurligini anglatadi) va yakuniy bo'lishi mumkin emas, ya'ni. o'zgarmas. Ma'lum bo'lishicha, ko'rsatmalarda har qanday materialdan (mavhum qism) yaxshi bardoshli dubulg'ani qanday yaratish kerakligi aytilgan, ammo buning uchun unda hech qanday teshik bo'lmasligi kerak (oxirgi majburiy qismni o'zgartirish mumkin emas).
- Abstrakt va statik - mavhum usulni bir vaqtning o'zida statik yoki sinxronlash mumkin emas. Statik mavhum usul hech qanday ma'noga ega emas, chunki u nafaqat hech narsa qilmaydi, balki butun bir sinfga tegishli - natija foydasiz narsadir.
- Abstrakt va sinxronlashtirilgan – ishni hech narsa qilmaydigan usul bilan sinxronlashtirishdan nima maqsad bor?
GO TO FULL VERSION