【发布时间】:2017-11-01 11:27:05
【问题描述】:
我的老师一直说接口不存在,所以人们可以使用它们作为在 c# 中实现多重继承的一种方式。
这是为什么呢?那他们是为了什么?还没有人能简单地向我解释这件事,我很困惑。
我阅读了一些描述接口的文章和书籍,似乎所有人都建议使用接口作为实现多重继承的解决方法..
【问题讨论】:
-
继承通常会让你更富有。接口只会让你变得更穷,它们会让你更加努力地实现它们。
-
鉴于接口不包含实现,它们肯定不能用于给您继承 - 没有什么可继承的。只有您需要在声称实现给定接口的类中实际实现的合同。这就是为什么我们首先使用这两个词——“继承”与“实现”。
-
接口允许你在一个对象上执行一个契约。该对象将具有至少接口“功能”,允许您对其执行某种操作。对象不一定必须满足“是”条件,这通常是继承所要求的。一个对象可以实现任意数量的接口。
-
冒着听起来很愚蠢的风险,你为什么不问问你的老师他们说你不明白的事情呢?我认识的大多数老师都不会因为“没有得到它”而对你不屑一顾,而是很乐意从好奇的学生那里得到问题,让他们进一步解释事情。
-
别这样。没有得到它是学生的全部工作,这就是为什么你是学生。除了没有努力去理解之外,永远不要因为任何原因不理解某事而感到羞耻。如果您害怕浪费其他课程的时间,或者您的老师显然没有更多时间,请尝试获得私人听众,或发送邮件。当然,询问 Stack Overflow 也没有错,但没有什么能比得上一位可用的老师。
标签: c# oop inheritance interface multiple-inheritance