为什么一个类确实需要实现一个接口?

时间:2014-11-06 10:05:56

标签: c# oop

很快我在.net框架中编写代码,我需要一个方法但无法访问它。在搜索之后,我学会了首先实现一个接口。我知道接口提供了区分或多态(我认为)。但是为什么.net框架要我实现那个接口呢?为什么有必要?

这是一个通用的处理程序,需要IReadOnlySessionState,IRequiresSessionState接口才能使用Session。

1 个答案:

答案 0 :(得分:1)

正如TomTom所说,因为它的设计就是这样......为什么这样设计呢?这是最可能的答案,接口为什么如此有用的答案。

取自here

“接口包含类或结构可以实现的一组相关功能的定义。

通过使用接口,您可以包含来自类中多个源的行为。该功能在C#中很重要,因为该语言不支持多重继承类。此外,如果要模拟结构的继承,则必须使用接口,因为它们实际上不能从其他结构或类继承。“

在您的情况下,您正在实现多个接口。

至于多态性......

“基类也可以通过使用虚拟成员来实现接口成员。在这种情况下,派生类可以通过覆盖虚拟成员来更改接口行为。有关虚拟成员的更多信息,请参阅多态性。”