Kezdőoldal » Számítástechnika » Programozás » [C#]Ezt hogy tudom megoldani?

[C#]Ezt hogy tudom megoldani?

Figyelt kérdés
Van jelenleg két külön osztályom(a későbbiekben több is lehet, szeretnék inkább okos megoldást találni brute force helyett), mindkettő implementál egy adott interfészt, más funkciót egyik sem lát el. Hogy tudom anélkül elérni az interfészben megadott metódusokat hogy előre megadnám az osztály típusát, deklarálásnál? Tehát jelenleg ezt kell csinálnom classA.method() vagy classB.method(), én pedig azt szeretném, hogy myClass = classA; myClass.method(). Hogy tudnám ezt elérni? (a myClass.method() rész világos, de teljesen meg vagyok lőve a típusokkal)
2018. ápr. 4. 08:47
 1/2 anonim ***** válasza:
Én ebből egy szót sem értettem.
2018. ápr. 4. 09:47
Hasznos számodra ez a válasz?
 2/2 anonim ***** válasza:

Annyi a lényeg, hogy az interface ugyanúgy viselkedik ilyen helyzetben, mintha egy superclass lenne. Tehát deklarálásnál ahelyett, hogy

ClassA osztaly = new ClassA();-t vagy

ClassB osztaly = new ClassB();-t írnál, megadhatod típusnak az interfacet is, tehát ha van egy nagyon kreatív TestInterface nevű interfaced, amit implementáltál az osztályaidba, akkor írhatod azt is, hogy

TestInterface osztaly = new ClassA(); vagy

TestInterface osztaly = new ClassB();


Csak így nem tudod direktben elérni az osztályfüggvényeket.

De megteheted azt is, hogy egy közös osztályból származtatod őket, és így az interface helyett megadhatod a superclass-t is deklarálásnál.


Ha jól értettem a problémádat.

2018. ápr. 4. 11:32
Hasznos számodra ez a válasz?

További kérdések:




Minden jog fenntartva © 2025, 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!