Sinfning statistik elementlari.
Siz sinf elementini yo statistik (statistic member), yo nusxa(instance
member) qilib aniqlashingiz mumkin. Bu shuni anglatadiki, har bir sinf nusxasi
uchun har bir element nusxalanadi. Agar siz elementni statistic deb e‘lon
qilsangiz undan faqat birta nusxa olinadi. Statistic element dastur joriy sinfni
ishga tushirganidan boshlab to dastur yakunlanganicha “yashaydi”. Masalan:
using System;
class InstCount{
public InstCount IS
}
instanceCount++;
static public int instanceCount;
//instanceCount = 0;
class AppClass {
public static void Main() {
Console.WriteLine(InstCount.instanceCount)
InstCount ic1 = new InstCount ();
Console.WriteLine(InstCount.instanceCount);
InstCount ic2 = new InstCount ();
Console.WriteLine(InstCount.instanceCount) ; } Sinflarni inisializatsiya qilish va konstruktorlar.
Obyektga yo’naltirilgan dasturlash tillarining enga katta yutug’i
(C/C++/C#/Java/J#/VB)- shundan iboratki, siz o’zingiz mustaqil ravishda
maxsus metodlarni aniqlashingiz mumkin. Bu metodlar sinflarning nusxasi
olinganda chaqirish uchun qo’llaniladi. Bu metodlar konstruktorlar deb ataladi.
Qachon foydalanuvchi obyekt nusxasini chaqirganda, uning konstruktori
chaqiriladi va u foydalanuvchining shu obyekt ustida boshqa amal bajargunicha
unga boshqaruvni qaytarishi kerak. Lekin konstruktor nomini qanday qo’yish
kerak? Bu muammoni C# mualliflari quyidagicha hal etishdi : C#
konstruktorlarining nomi sinf nomi bilan nir xil bo’lishi kerak. Masalan:
using System;
class Constructor1Aрр{
ConstructorlApp()
{
Console.WriteLine("a konstruktor") ;
}
public static void Main()
{
ConstructorlApp app = new ConstructorlApp();
} }
Konstruktorlar qiymat qaytarmaydi. Agar siz buni amalga oshirmoqchi
bo’lsangiz, komplyator o’zgaruvchining sinf nomi bilan bir xil nomga ekanligini
xato sifatida xabar qiladi.
Sinfning statistik elementlari.
Siz sinf elementini yo statistik (statistic member), yo nusxa(instance
member) qilib aniqlashingiz mumkin. Bu shuni anglatadiki, har bir sinf nusxasi
uchun har bir element nusxalanadi. Agar siz elementni statistic deb e‘lon
qilsangiz undan faqat birta nusxa olinadi. Statistic element dastur joriy sinfni
ishga tushirganidan boshlab to dastur yakunlanganicha “yashaydi”. Masalan:
using System;
class InstCount{
public InstCount IS
}
instanceCount++;
static public int instanceCount;
//instanceCount = 0;
class AppClass {
public static void Main() {
Console.WriteLine(InstCount.instanceCount)
InstCount ic1 = new InstCount ();
Console.WriteLine(InstCount.instanceCount);
InstCount ic2 = new InstCount ();
Console.WriteLine(InstCount.instanceCount) ; }
MIRZO ULUG’BEK NOMIDAGI O’ZBEKISTON MILLIY UNVERSITETI JIZZAX FILIALI
911_20 GURUH TALABASI ASHRABBOYEV FOZILNING
ALGORITM TILLAR VA DASTURLASH
FANIDAN
MUSTAQIL ISHI
Do'stlaringiz bilan baham: |