Ik wil het volgende doen:
Als ik echter het volgende probeer:
Dan krijg ik de melding dat IFunctionaliteitA Functies { get; } niet geimplementeerd is.
Het idee is dat van de objecten die FunctionaliteitA hebben, sommigen tevens FunctionaliteitB kunnen hebben. FunctionaliteitA en FunctionaliteitB moeten gegevens en methodes delen.
Waarom mag dit niet en wat is de beste oplossing? Alvast bedankt
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| public interface IFunctionaliteitA { GegevensKlasse Data { get; } void DoeEenMetData(); } public interface IFunctionaliteitB : IFunctionaliteitA { void DoeOokTweeMetData(); } public interface IObjectA { IFunctionaliteitA Functies { get; } } public interface IObjectB : IObjectA { new IFunctionaliteitB Functies { get; } } |
Als ik echter het volgende probeer:
C#:
1
2
3
4
5
| public class Object : IObjectB { private IFunctionaliteitB _Functies; public IFunctionaliteitB Functies { get { return _Functies; } } } |
Dan krijg ik de melding dat IFunctionaliteitA Functies { get; } niet geimplementeerd is.
Het idee is dat van de objecten die FunctionaliteitA hebben, sommigen tevens FunctionaliteitB kunnen hebben. FunctionaliteitA en FunctionaliteitB moeten gegevens en methodes delen.
Waarom mag dit niet en wat is de beste oplossing? Alvast bedankt
Geef mij maar een Warsteiner.