如何禁用类型转换从接口到实现接口的类

时间:2018-12-15 14:15:43

标签: c# inheritance interface

如何禁用从接口IFoo到Bar类的转换?甚至有可能吗?

组装一个

FMX.Inifiles.Android

组装二

public interface IFoo
{
   string Name { get; }
}

public class Foo : IFoo
{
   public int SecretValue { get; private set; }
   public string Name     { get; private set; }
}

我可以阻止Bar强制将secretFoo转换为Bar类型,从而访问SecretValue的值吗?

1 个答案:

答案 0 :(得分:1)

Bar的基类从Foo更改为IFoo,并将属性secretFoo从类型IFoo更改为Foo

public class Bar : IFoo
{
    private Foo secretFoo;
    public string Name {
        get
        {
            return secretFoo.Name;
        }
    }
}