Type safety through inheritance
<p>This is probably an easy question, however i could not find a solution so far...</p>

<p>Let's say I have an Interface "IEntity", that is implemented by several other interfaces. What I want is that each of these interfaces implement a method with the return type of themselves. For example the Entity "Car" should return "ICar", while the Entity "Person" should return "IPerson". I've tried to implement this functionality with generic types but didn't find a really acceptable solution.</p>

<p>Hope you can help me, thanks in advance.</p>
