1

你们能解释一下当我有接口类型的参数时如何获取对象属性吗?

    public interface IObject {}

    public class Object : IObject {}

然后我有一些这样的方法:

    public void Add(IObject object)
    {
        object.someThing; // I want to get that property but I can't.
    }

我应该使用什么类型来获取这些属性?什么是最佳做法?

4

1 回答 1

2

接口是由类实现的契约,这意味着

接口包含的任何规则(方法和属性)都需要由实现接口的类来实现

因此,当您接受具有接口的方法作为参数中的类型时,您是在声明将传递给该方法的对象将包含接口所述的方法和属性。

因此,您希望在对象上调用的方法应该在接口中定义。

于 2014-01-18T14:02:03.533 回答