我正在尝试创建一个接口继承系统,它使用相同的属性,但始终是另一个派生类型.因此,应该以某种方式覆盖或隐藏派生接口的基本属性.
例如,两个接口,男人和女人,来自丈夫和妻子,也是接口.男人和丈夫的接口都有"甜心"财产,而女人和妻子则有"亲爱的"财产.现在,男人的"甜心"财产是女人,而丈夫的"甜心"财产应该是妻子(源自女人).和女人和妻子的"亲爱的"财产一样.
public interface Man // base interface for Husband
{
Woman sweetheart { get; set; }
}
public interface Woman // base interface for Wife
{
Man darling { get; set; }
}
public interface Husband : Man // extending Man interface
{
new Wife sweetheart { get; set; } // narrowing "sweetheart" property's type
}
public interface Wife : Woman // extending Woman interface
{
new Husband darling { get; set; } // narrowing "darling" property's type
} …Run Code Online (Sandbox Code Playgroud)