RiapaMeTpbi anrmeTa
Statik usullar va atributlar
Download 399.85 Kb.
|
Java (Laboratoriya)
Statik usullar va atributlar
Statik deb e'lon qilingan atributlar sinfning barcha ob'ektlari uchun umumiy bo'lib, sinf o'zgaruvchilari deb ataladi. Agar bitta ob'ekt bunday atributning qiymatini o'zgartirsa, u holda barcha ob'ektlar o'zgarishlarni ko'radi. Statik atributlar bilan ishlash uchun statik spetsifikatsiya bilan e'lon qilingan statik usullar qo'llaniladi . Bunday usullar sinf usullari bo'lib, bu ko'rsatkichni o'z ichiga olmaydi. ma'lum bir ob'ektga. // № 3.4 misol: statik usul: MyStatic . java sinf MyStatic { xususiy statik int x = 1; public static int getX(){ qaytish x; } } Statik usulni chaqirish quyidagini belgilash orqali mumkin: sinf nomi.metod nomi, masalan: int y = MyStatic . getX (); Siz bunday usullarni, masalan, Math sinfidan ob'ektni e'lon qilmasdan chaqirishingiz mumkin: float z = Math.max(x, y); ikki barobar rd = matematika . tasodifiy (); // tasodifiy qiymat Statik usulni ob'ekt nomi yordamida ham chaqirish mumkin, ammo bunday chaqiruv kompilyatsiya xatosiga olib kelmasa ham, mantiqan to'g'ri bo'lmaydi. Sinfning statik usullarini bekor qilish amaliy emas, chunki statik atribut yoki usulga asosan u tegishli bo'lgan sinf nomini ko'rsatish orqali kirish mumkin. yakuniy modifikator yakuniy modifikator konstantalarni aniqlash uchun ishlatiladi. Yakuniy deb e'lon qilingan usullarni pastki sinflarda bekor qilib bo'lmaydi . Masalan: /* № 3.5 misol: yakuniy maydonlar va usullar : B. java */ sinf A { yakuniy int T = -2 73; ommaviy yakuniy bekor usuli() { System.out.println("yakuniy usul "); T = 0;// xato ! } } B sinfi A { public void method(){ // xato ! } } Konstanta sinf maydoni sifatida e'lon qilinishi mumkin, lekin ishga tushirilmaydi. Bunday holda, u mantiqiy blok yoki konstruktorda ishga tushirilishi kerak. Konstanta boshqa modifikatorli atributlardan farqli o'laroq standart qiymatni qabul qila olmaydi. Konstantalar usullarda mahalliy yoki usul parametrlari sifatida e'lon qilinishi mumkin. Ikkala holatda ham bunday konstantalarning qiymatlarini o'zgartirish mumkin emas. /* № 3.6 misol: yakuniy maydonlarni ishga tushirish va ulardan foydalanish: DemoFinalFields . java */ public sinf DemoFinalFields { Download 399.85 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling