This print for content only-size & color not accurate 7" X 9-1/4" / casebound / malloy


// Multiple inheritance for interface types is a-okay



Download 21,46 Mb.
Pdf ko'rish
bet574/1830
Sana28.09.2021
Hajmi21,46 Mb.
#188411
1   ...   570   571   572   573   574   575   576   577   ...   1830
Bog'liq
[book] [en] Pro C# 2008 and the NET 3.5 Platform Fourth Edition

// Multiple inheritance for interface types is a-okay.

public interface IDrawable

{

void Draw();



}

public interface IPrintable

{

void Print();



void Draw(); // <-- Note possible name clash here!

}

// Multiple interface inheritance. OK!



public interface IShape : IDrawable, IPrintable

{

int GetNumberOfSides();



}

Figure 9-9 illustrates the current interface hierarchy.

C H A P T E R   9  

W O R K I N G   W I T H   I N T E R FA C E S



287

8849CH09.qxd  10/1/07  10:41 AM  Page 287




Figure 9-9.

Unlike classes, interfaces can extend multiple interface types.

Now, the million dollar question is, if we have a class supporting IShape, how many methods

will it be required to implement? The answer: it depends. If we wish to provide a simple implemen-

tation of the Draw() method, we only need to provide three members, as shown in the following

Rectangle type:

class Rectangle : IShape

{

public int GetNumberOfSides()



{ return 4; }

public void Draw()

{ Console.WriteLine("Drawing..."); }

public void Print()

{ Console.WriteLine("Prining..."); }

}

If you would rather have specific implementations for each Draw() method (which in this case



would make the most sense), you can resolve the name clash using explicit interface implementa-

tion, as shown in the following Square type:

class Square : IShape

{


Download 21,46 Mb.

Do'stlaringiz bilan baham:
1   ...   570   571   572   573   574   575   576   577   ...   1830




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