我知道这是一个非常普遍的问题,但我认为对于经验不足的程序员来说,获得明确答案会非常有益。
情景:
假设我MyClass
正在实施接口IMembers1
,IMembers2
,IMembers3
。 MyClass
还包含未在任何接口中定义的成员。
问题:
使用f.e.有什么好处IMembers2
引用访问IMembers2
个实例中的MyClass
成员,而不是仅使用MyClass
引用来访问它们。
如果我有类型的实例在编译时未知但我确信它将实现IMembers2
接口我当然会使用IMembers2
引用来访问其成员。很多代码示例和教程都在教授使用f.e. IEnumerable<T>
引用堆中的访问列表集合,而不是使用List<T>
引用。