Immagina questa configurazione:
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;
}
}
Va bene inserire la classe di estensione nello stesso file dell'interfaccia (ad esempio IMass.cs) o dovrebbe trovarsi in un file separato (IMassExtension.cs)?
Una classe base non è possibile qui. Immaginate
public class Person : Animal, IMass {}
e
public class House : Building, IMass {}