【发布时间】:2015-02-08 14:57:43
【问题描述】:
在我的项目中,我有两个类:文章和新闻。它们中的某些字段是相同的。例如:标题、文本、关键字、MemberID、日期。
我创建了一个界面并在其中放置了相同的字段。对吗?
interface ITextContext
{
public int ID { get; set; }
public int Title { get; set; }
public string Text { get; set; }
public DateTime Date { get; set; }
List<Keyword> Keywords;
}
public class Article:ITextContext
{
public int ArticleID { get; set; }
public bool IsReady { get; set; }
}
public class NewsArchive:ITextContext
{
public int NewsArchiveID { get; set; }
}
【问题讨论】:
-
base class 在这里可能更合适,除非
Archive和NewsArchive类之间的成员行为不同 -
部分正确,您需要在每个类中实现这些接口成员。接口更像是对其余代码的说明,类将包含接口中定义的成员。
-
如果将 iterface 更改为 Base Class 是否正确?
-
你尝试构建这个吗?因为它不会建立。先试试吧!
-
当然。这是 OO 的基本原则,如果您从接口继承,您应该实现它或使您的类抽象。你不需要接口,你需要一个基类。