Stellen Sie sich diesen Aufbau vor:
public interface IMass{
double Mass {get;}
}
public static class IMassExtension {
public static double ToKg(this IMass massObject) {
return massObject.Mass / 1000.0;
}
public static double CalculateInteractiveGravity(this IMass massObject, IMass otherMassObject)
{
return blah;
}
}
Ist es in Ordnung, die Erweiterungsklasse in dieselbe Datei wie die Schnittstelle (dh IMass.cs) zu stellen, oder sollte sie sich in einer separaten Datei (IMassExtension.cs) befinden?
Eine Basisklasse ist hier nicht möglich. Vorstellen
public class Person : Animal, IMass {}
und
public class House : Building, IMass {}