Konstruktor nima?
Java-da konstruktor ob'ekt yaratilganda uni ishga tushiradi. Uning nomi sinf nomi bilan bir xil, sintaksisi esa metod sintaksisiga o'xshaydi. Biroq, ikkinchisidan farqli o'laroq, konstruktorda qaytarish qiymati yo'q.
Odatda, Java-dagi konstruktor sinf tomonidan aniqlangan misol o'zgaruvchilarini ishga tushirish yoki to'liq shakllangan ob'ektni yaratish uchun zarur bo'lgan boshqa ishga tushirish protseduralarini bajarish uchun ishlatilishi mumkin.
Konstruktorlar belgilanishidan qat'iy nazar barcha sinflarda mavjud, chunki Java avtomatik ravishda barcha sinf a'zolari o'zgaruvchilarini nolga tenglashtiradigan standart konstruktorni taqdim etadi. Biroq, o'zingizning konstruktoringizni aniqlaganingizdan so'ng, standart konstruktor endi ishlatilmaydi.
Misol
Quyidagi misolda parametrlarsiz sinf konstruktoridan foydalanish ko'rsatilgan.
class MyClass
{
int x;
MyClass()
{
x = 10;
}
}
Obyekt destruktsiyasi
Yuqoridagi bo’limda aytilganidek obyektlar “heap” tizim xotirasida joylashadi. Boshqa manbalar singari tizim xotirasi xam chegaraga ega. Demak, obyektlar bilan ishlash mobaynida xotirada joyni tejash maqsadida keraksiz obyektlarni muntazam o’chirib turish kerak. Aksariyat dasturlash tillarida dasturchi
keraksiz obyektlarni ochirishni o’zi nazorat qilishi va amalga oshiruvchi dastur kodini tuzishi kerak. Java dasturlash tili keraksiz obyektlarni ochirishni avtomatik tizimiga ega bo’lib u keraksiz obyektlarni to’plash tizimi deyiladi.
Agar obyekt dasturning biron bir o’zgaruvchisi tomonidan ssilkaga ega bo’lmasa ushbu obyekt keraksiz xisoblanadi va keraksiz obyektlarni to’plash tizimi tomonidan o’chiriladi. Ushbu tizim obyektlarni ssilkalarini muntazam tekshirib turadi va ssilkasi qolmagan obyektlarni o’chirish uchun belgilaydi va o’chiradi, o’chirilgan obyektlar egallagan xotira manbalari tizimga qaytariladi.
Misol
Quyida this kalit so'zi sinf misollariga kirish uchun ishlatilishiga misol keltirilgan. Siz ushbu dasturni This_Example.java deb nomlangan faylga nusxalaymiz.
public class This_Example {
int num = 11; This_Example()
{
System.out.println("Quyida this kalit so\'zi sinf misollar"); }
This_Example(int num) {
this();
this.num = num;
}
public void greet()
{
System.out.println("Salom");
}
public void print()
{
num int num = 20;
this.greet();
System.out.println("o'zgaruvchining qiymati num: " + num);
System.out.println(" global o'zgaruvchining qiymati num: " + this.num);
}
public static void main(String[] args) {
This_Example obj1 = new This_Example();
obj1.print();
This_Example obj2 = new This_Example(30);
obj2.print(); } }
Xulosa
Men ushbu mustaqil ishni bajarish jarayonida oby’ektga yo’naltirilgan dasturlash, java dasturlash tilida ob’yektga yo’naltirilgan dasturlash, polimorfizm, klasslar, metodlar, konstruktorlar, destruktorlar haqida bilimlarga ega bo’ldim va olgan bilimlarimni misollar yordamida mustahkamladim.
Foydalanilgan adabiyotlar
Язык программирования Java SE 8. Подробное описание Авторы: Джеймс Гослинг, Билл Джой
Год: 2015
Irmuhamedov Z.M. va boshqalar. Informatika.5.Axborot texnologiyalari. Toshkent, 1-qism. 2002, 2-qism. 2003
http://fayllar.org
https://www.onlinegdb.com/online_java_compiler
Do'stlaringiz bilan baham: |