如何禁用从接口IFoo到类Bar的强制转换?这可能吗?
组装一
public interface IFoo
{
string Name { get; }
}
public class Foo : IFoo
{
public int SecretValue { get; private set; }
public string Name { get; private set; }
}
装配二
public class Bar : Foo
{
private IFoo secretFoo;
}
我可以阻止Bar将secretFoo强制转换为Bar类型,从而访问SecretValue的值吗?
将Bar
的基类从Foo
更改为IFoo
,并将属性secretFoo
从类型IFoo
更改为类型Foo
。
public class Bar : IFoo
{
private Foo secretFoo;
public string Name {
get
{
return secretFoo.Name;
}
}
}