1-Mavzu 1-Mavzu Reja: Klass a’zolariga ruxsatni boshqarish


Download 111.72 Kb.
bet27/96
Sana29.03.2023
Hajmi111.72 Kb.
#1307438
1   ...   23   24   25   26   27   28   29   30   ...   96
Bog'liq
1-Mavzu 1-Mavzu Reja Klass a’zolariga ruxsatni boshqarish

int i, j;
// Sinfda fabrikani ishlatib, ob'ektlarni shakllantirish.
for(i=0, j=10; i < 10; i++, j--) {
MyClass anotherOb = ob.Factory(i, j); // ob`ekt yaratish
anotherOb.Show();
}
Console.WriteLine();
}
}
Bu kodning bajarilishi natijasi quyidagicha bo`ladi.
и b: 0 10
и b: 1 9
и b: 2 8
и b: 3 7
и b: 4 6
и b: 5 5
и b: 6 4
и b: 7 3
и b: 8 2
и b: 9 1
Keling, ushbu misolni batafsil ko'rib chiqaylik. Bu misolda, MyClass sinfining konstruktori belgilanmagan, shuning uchun jimlikdagi konstruktor chaqiriladi. Bu shuni anglatadikia va b o'zgaruvchilarining qiymatlari konstruktor yordamida o`rnatilmaydi. Lekin sinf fabrikasi Factory()da ob'ektlar yaratish mumkin va unda a va b o'zgaruvchilar qiymatlari belgilangan. Bundan tashqaria va b o'zgaruvchilar yopiq bo`lganligi uchun ularning qiymatlari faqat sinf fabrikasining Factory() metodi yordamida berilishi mumkin. Main() metodi MyClass sinf ob'ektining nusxasini oladi va uning fabrika metodi yordamida uning o'nta boshqa ob'ektni yaratish uchun for operatoridan foydalanadi. Quyida ushbu ob'ektlar yaratilgan kod satri mavjud.
MyClass anotherOb = ob.Factory(i, j); // ob`ekt yaratish
Takrorlanish jarayonining har bir qadamida sinf fabrikasi tomonidan anotherOb ob'ektiga havola o'zgaruvchisi yaratiladi va u ob'ektga havola beradi. Iteratsiyaning har bir bosqichi tugagandan so'ng, anotherOb o'zgaruvchisi o`z harakat doirasidan chiqadi va u murojaat qilgan ob'ekt qayta ishlanadi.

Download 111.72 Kb.

Do'stlaringiz bilan baham:
1   ...   23   24   25   26   27   28   29   30   ...   96




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling