O`ZBEKISTON RESPUBLIKASI
OLIY VA O`RTA MAXSUS TA`LIM VAZIRLIGI
NAMANGAN DAVLAT UNIVERSITETI
Matematika fakulteti
Informatika kafedrasi katta o`qituvchisi
Holmirzayev Hoshimjon Erkinjonovichning
60610200-Axborot tizimlari va texnologiyalari yo`nalishi
1-kurs kechki ta’lim talabalariga
“ALGORITMIK TILLAR VA DASTURLASH”
fanidan
“STATIK BERILGANLAR, STATIK METODLAR,
STATIK SINFLAR” mavzusidagi
ma’ruza uchun
ochiq dars mashg`uloti ishlanmasi
Namangan -2022
7-Mavzu: Statik berilganlar, statik metodlar, statik sinflar
Reja
1. Statik a'zolar va static modifikatori
2. Statik konstruktor
3. Statik sinflar
Tayanch so`s va iboralar: statik az’olar, statik modifikator, statik maydon, statik sinf.
1. Statik a'zolar va static modifikatori[1]
Oddiy maydonlar, usullar, xususiyatlardan tashqari, sinf statik maydonlar, usullar, xususiyatlarga ega bo'lishi mumkin. Statik maydonlar, usullar, xususiyatlar butun sinfga tegishli va bunday sinf a'zolariga kirish uchun sinfning namunasini yaratish shart emas. Masalan:
class Account
{
public static decimal bonus = 100;
public decimal totalSum;
public Account(decimal sum)
{
totalSum = sum + bonus;
}
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Account.bonus); // 100
Account.bonus += 200;
Account account1 = new Account(150);
Console.WriteLine(account1.totalSum); // 450
Account account2 = new Account(1000);
Console.WriteLine(account2.totalSum); // 1300
Console.ReadKey();
}
}
Bu holda, Account sinfida ikkita maydon mavjud: bonus va totalSum. Bonus maydoni statikdir, shuning uchun u alohida holat emas, balki butun sinf holatini saqlaydi. Va shuning uchun biz ushbu maydonga sinf nomi bilan murojaat qilishimiz mumkin:
Console.WriteLine(Account.bonus);
Account.bonus += 200;
Xotira darajasida statik maydonlar uchun xotira bo'limi yaratiladi, bu sinfning barcha ob'ektlari uchun umumiy bo'ladi.
Bunday holda, statik o'zgaruvchilar uchun xotira ajratiladi, hatto bu sinf ob'ektlari yaratilmagan bo'lsa ham.
Do'stlaringiz bilan baham: |