Kezdőoldal » Számítástechnika » Programozás » Mik azok az interface-ek?

Mik azok az interface-ek?

Figyelt kérdés
Hogyan kell használni őket és milyen probléma megoldásánál lehetne hasznukat venni?

2015. szept. 5. 19:44
 1/4 anonim ***** válasza:

Gondolom OOP és nem hálózatos tekintetben...

[link]

G.

2015. szept. 5. 20:01
Hasznos számodra ez a válasz?
 2/4 anonim ***** válasza:
63%

Szóval... Biztosan szoktál hajat szárítani hajszárítóval, ugye? Nos, mi is kell a hajszárítónak, hogy működjön? Áram. És áram honnan lesz? Na azt sok mindenből szerezhetünk, például:

- hőerőmű

- szélerőmű

- vízerőmű

- atomerőmű

- aggregátor

- akkumulátorok

stb.


Így első felindulásból hogyan is csinálnánk meg a Hajszárító osztályt?

class Hajszárító {

public Hőerőmű Áramforrás;

}

És ez szépen menni is fog:

Hajszárító h = new Hajszárító();

Hőerőmű e = new Hőerőmű();

h.Áramforrás = e;


De itt már bajok lesznek:

Hajszárító h = new Hajszárító();

Atomerőmű e = new Atomerőmű ();

h.Áramforrás = e;


Azért valljuk be... Te megvennéd azt a hajszárítót, ami csak hőerőműből tudja az áramot venni?


A lényeg az az, hogy a világban több dolog is biztosít egy erőforrást/szolgáltatást, és mi azt akarjuk, hogy akármelyiket is választom, tudjam használni, függetlenül attól, hogy ténylegesen mi is az, ami azt biztosítja, és azt hogyan biztosítja. A hajszárítóhoz mi kell? Áram. És amikor használni akarom, érdekel engem, honnan lesz áram, és az az áram hogyan is áll elő? Nem. Az interfész pont erre lesz jó. Ez nem más, mint egy megszorítás, hogy egy tárgynak, amelyre ez a megszorítás érvényes, milyen szolgáltatást kell nyújtania, és azt hogyan kell elérhetővé tennie, hogy más tárgyak használni tudják. No nézzük:


//Ez a megszorítás:

interface Áramforrás {

void getÁram();

}

//Ezek azok a dolgok a világban, amelyekre érvényes a megszorítás:

class Hőerőmű : Áramforrás {

public void getÁram() {...}

}

class Atomerőmű : Áramforrás {

public void getÁram() {...}

}

//És ez a tárgy akarja használni a megszorítás által biztosított erőforrást/szolgáltatást:

class Hajszárító {

public Áramforrás af;

public void Szárít() {

this.af.getÁram(); //Tökmindegy, mi is az az áramforrás, tuti, hogy getÁram metódusa lesz neki.

}

}


Innentől kezdve tökmindegy, mit kötök rá a hajszárítóra, azt fogja tudni használni a megszorítás miatt:

Hajszárító h = new Hajszárító();

Hőerőmű he = new Hőerőmű();

Atomerőmű ae = new Atomerőmű();

h.af = he;

h.af = ae;

2015. szept. 6. 12:07
Hasznos számodra ez a válasz?
 3/4 anonim ***** válasza:
Áramforrás as fuck
2015. szept. 6. 14:20
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:
<szar_vicc>Amúgy tudjátok, hol laknak az intermadarak? Interfészekben.</szar_vicc>
2015. szept. 6. 14:50
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!