Курс лекций мдк 01. 02 «Прикладное программирование» пм 01 «Разработка программных модулей программного обеспечения для компьютерных систем»



Download 350,99 Kb.
bet12/22
Sana08.12.2022
Hajmi350,99 Kb.
#881790
TuriКурс лекций
1   ...   8   9   10   11   12   13   14   15   ...   22
Bog'liq
lektsii pm01-1

атрибут, указанный при

атрибут в базовом классе

атрибут, полученный в

наследовании




производном классе

public

public

public




protected

protected




private

недоступен

protected

public

protected




protected

protected




private

недоступен

private

public

private




protected

private




private

недоступен



Пример
class B
{
protected:

int t;
public:


char u;

private:
int x;


};

struct S : B {}; // наследуемые члены t, uимеют атрибут доступа public


class E : B {}; // t, u имеют атрибут доступа private
class M : protected B {}; // t, u – protected
class D : public B {}; // t – protected, u – public

class P : private B {}; // t, u – private


Таким образом, можно только сузить область доступа, но не расширить.




Тема «Статические поля класса»

Хотя каждый объект класса имеет одинаковый набор полей и методов, значения полей у каждого объекта свои, а результат вызова методов в общем случае зависит от того, из какого объекта метод вызывается. На самом деле, это не всегда так. Существуют особые поля класса, которые называют статическими.


Статическое поле является общим для всех объектов этого класса. Необходимость в таких статических полях продиктована рядом практических соображений, и их использование во многих случаях оправдано. Например, в программе нужно контролировать количество созданных на данный момент объектов определенного класса.





  • этом случае создается статическое поле класса, значение которого определяется количеством объектов в работе. В отличие от обычного поля класса, статическое поле не исчезает при удалении объекта. В некотором

26


смысле статические переменные напоминают глобальные переменные программы. Однако статические переменные, в отличие от глобальных

переменных, полностью согласуются с принципами объектно-ориентированного программирования, и в частности с принципом инкапсуляции. Статические поля объявляются, как и обычные, но перед статическим полем указывается ключевое слово static. В листинге приведен пример для статического поля.


#include


class SimpleClass{


public:
//Статическое поле:


static int m;
//Нестатическое поле:
int n;
void show();
}obj1,obj2;

//Повторное объявление переменной:


int SimpleClass::m;

int main(){


SimpleClass::m=10;
obj1.n=1;

obj2.n=2;


obj1.show();

obj2.show();


obj1.m=100;
obj2.show();

return 0;}


//Описание метода:
void SimpleClass::show()
{

cout << "Static field m = " << m << endl; cout << "Nonstatic field n = " << n << endl; }





Download 350,99 Kb.

Do'stlaringiz bilan baham:
1   ...   8   9   10   11   12   13   14   15   ...   22




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish