首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >接口继承与类继承相结合

接口继承与类继承相结合
EN

Stack Overflow用户
提问于 2015-10-15 13:15:40
回答 3查看 229关注 0票数 2

我对一项任务有问题,我想征求意见。

我被告知要实现:基于IPerson IEmployee的IPerson接口Person类,以及扩展IPerson和Person的雇员

最后一句被弄糊涂了,我不知道该如何应付这些要求。我有一个想法,我希望由你来验证,因为个人和员工将使用列表来存储:

IEmployee会扩展IPerson而员工只实现IEmployee吗?或者除了那个员工之外,还应该延长人的范围?

谢谢你对这个问题的回答!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-10-15 13:18:43

所有员工都是人,因此所有员工都实现了IEmployeeIPersonEmployee类扩展了Person类。

代码语言:javascript
复制
public interface IPerson
{
}

public class Person : IPerson
{
}

public interface IEmployee : IPerson
{
}

public class Employee : Person, IEmployee
{
}
票数 7
EN

Stack Overflow用户

发布于 2015-10-15 13:20:38

这就是你想要的:

代码语言:javascript
复制
public interface IPerson { }
public interface IEmployee : IPerson { }
public class Person : IPerson { }
public class Employee : Person, IEmployee { }
票数 2
EN

Stack Overflow用户

发布于 2015-10-15 13:59:21

问题是,在实现接口层次结构之前,您应该三思.

您不希望强迫接口实现类实现将不使用的方法,所以请考虑是否使用IEmployee作为参数的方法也需要所有 IPerson属性。如果不是,最好用所需的属性定义一个新接口。

这与固体原理的界面偏析相对应。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33149581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档