继承和接口.NET

Joo*_*ohn 3 c# oop

奇怪的问题:

想象一下,我有一个名为BaseFoo的基类.我有一个名为IFoo的方法接口.我在BaseFoo下面有很多类.

如果我在BaseFoo中实现接口,我不需要在继承的类中实现,对吗?

好的,但想象一下,我有一个处理IFoo的通用功能.我是否需要明确声明他们实施IFoo?

像这样(伪插图代码)

public class BaseFoo:IFoo;

public interface IFoo;
Run Code Online (Sandbox Code Playgroud)

我应该这样做吗?

public class AmbarFoo:BaseFoo,IFoo
Run Code Online (Sandbox Code Playgroud)

要么?

public class AmbarFoo:BaseFoo
Run Code Online (Sandbox Code Playgroud)

什么是最正确的方法?效果是否相同?如果我测试AmbarFoo是否是IFoo我会得到什么?

谢谢

Jon*_*eet 7

无论如何,它的行为方式都是一样的.如果要使用显式接口实现重新实现接口,则只需重新声明接口名称.AmbarFoo意志的一个实例确实"说"它实现了IFoo.