C#-ban lehet egy List<List<string>> belső listájának nevet adni mint normál esetben egy sima generikus listának? Mondjuk "macskák", azon belül "karmolósak", meg "dorombolósak".
Figyelt kérdés
2019. jún. 3. 19:44
1/4 anonim válasza:
Lehet, pl úgy, hogy a belső Collection nem egy List hanem inkább egy Dictionary, ami egy kulcs-érték pár gyűjteményt reprezentál. De én nem így csinálnám, hanem inkább csinálnék egy interface-t ami leírja a Karmolósak viselkedését illetve a Dorombolósak viselkedését és azt implementálnák a Karmolósak és Dorombolósak osztályok. Viszont lenne egy harmadik interface is, mondjuk Cat interface. És azt a Karmolósak osztály és a Dorombolósak osztály is implementálná. Akkor minden macsekot be tudsz tenni egy listába függetlenül attól, hogy ő karmol vagy dorombol. A Cat interfacenek kell egy metódus ami mondjuk Cselekves névre hallgat és ezt implementálni kell mindenhol. Ha meghívod a Cselekves fv-t akkor a karmolós macska karmol a dorombolós macska dorombol.
2/4 A kérdező kommentje:
Világos. Az interface eszembe sem jutott.
Még rutintalan vagyok.
Köszönöm.
2019. jún. 3. 20:19
3/4 anonim válasza:
Ezzel az interfészeléssel nincsen túlbonyolítva a dolog?
4/4 anonim válasza:
Nem. Igaza van az elsőnek.
Ebben az esetben nincs értelme dupla listát csinálni, teljesen értelmetlen. Erre van két megoldásod.
Az első az ahogy az első írta, interface-el.
A másik az hogy abstract osztály csinálsz a macskáknak, aminek a leszármazottja lesz a karmolós, meg a dorobolós. Így kódot is tudnak örökölni a karmolósok, a macska osztályban megírsz minden olyan metódust/property-t ami minden macskának van, a karmolós/dorombolós osztályban meg az adott típusu macskára vonatkozó metódusokat/property-ket írod meg.
Szerintem egyébként itt érdemesebb abstract osztály használni, mert itt van öröklődés is. Nem kell duplikálnod a kódot.
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!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!