我想知道接口是否会在运行时提供任何好处。
假设我有一个处理极大/复杂对象的经理。如果此对象需要与许多不同逻辑块进行交互,那么使其为每个特定逻辑块实现接口并将其作为该特定接口传递将是有益的。这会以任何方式改善表现吗?
答案 0 :(得分:7)
这会以任何方式改善表现吗?
没有。这对性能没有影响。
接口还有其他优点,特别是在将实现细节与所需的API分离并在整个系统中传递方面。
答案 1 :(得分:2)
您通过接口(和实现)设计软件,以实现松散耦合的软件组件,并允许在某些行为的不同具体实现中进行选择。 这与性能完全无关,如果您想提高性能,则需要调查代码的其他方面,通常通过修改实现部分来实现性能优势,而不是以您的方式实现解释代码。
答案 2 :(得分:1)
这不会有任何进步。您可以将接口视为表示实例的不同方式。您操作的任何表示(接口)都不会更改实例本身的特征。例如,很多类都实现了IDisposable
。将这样的实例作为IDisposable传递不会改变对象行为的其余部分,也不会使其Dispose()逻辑更有效。