请考虑以下接口:
interface IFile
{
// Members
};
interface IAudioFile : IFile
{
// Members
};
interface IVideoFile : IFile
{
// Members
};
enum ContentType
{
Audio,
Video
};
interface IProvider
{
HashSet<ContentType> GetSupportedTypes();
IList<IFile> GetFiles(ContentType contentType);
};
我认为 ContentType 枚举是多余的。有没有办法使用接口标识符而不是枚举类型?
非常感谢对界面设计的任何评论。