c#接口与类的区别!

来源:百度知道 编辑:UC知道 时间:2024/05/29 12:37:58
类只能单个继承,接口可以多个继承 。我在书上看了个例子是这样的:一个公司有2个部门,销售部和采购部,这2个部门有共同点就是员工的 姓名 员工号 性别 年龄,不同点就是销售部有员工销售额,采购部有采购这个动作。现在就建立3个类,父类Eeployee,销售部子类saleEeployee,采购部子类buyEeployee,然后销售部采购部都需要父类的属性,那么就继承父类吧,saleEeployee:Eeployee; buyEeployee:Eeployee。这里就不明白了,类不是只能继承一个子类吗?为什么这个例子中同时继承了销售类和采购类2个子类哦!!例子是书上的!!希望能给个相关的例子解释哈!谢谢!

简单点说你有3个类,员工,销售员工,采购员工

员工是父亲,销售和采购是他两个儿子

而销售和采购是分别继承了父亲的属性

他们两个是继承同一个,但是并不是继承了多个

我们来看下错误的情况

比如说销售和采购是父亲,员工是儿子

员工要同时继承销售和采购的属性,那么这里就是错误的继承2个父类了

如果要实现这种功能我们就用接口

你好象没明白书上说的
所谓单继承意思是一个类只能继承一个父类,并不是说B继承了A,C就不能继承A了,比如saleEmployee继承了Employee,就不能再继承其他类了,但是其他类还可以继承Employee

接口可以被多个继承,继承的接口都要实现接口里定义的成员
至于他们的区别嘛,这个得慢慢体会才得,接口是描述类的动作,比如小鸟和飞机都是属于飞行的物体,那么它们都继承了飞行物体这个父类,如果你把飞行这个动作放在父类让他们继承,那他们的飞行就都是一样的了,不仅它们,连其他飞行物的飞行动作也都是一成不变,可是用接口来实现的话,它们各自就有自己所属的飞行动作了,小鸟是用翅膀挥动飞行,飞机是怎么飞的我也不知道啦

一个类只能继承一个类,但是可以实现多个接口,接口是对继承单根性的扩展。
如果一个类继承了一个父类,则以“,”号分隔父类和接口
class Student:Person,IComparable → 继承了Person实现了IComparable接口

三楼的的回复真是经典!
单个继承,说的事一个类(子类)只能继承一个(单个)类(父类).
个人认为接口是为了解决多继承而产生的。

接口与类不同点:

  1. 不能直接实例化接口,

  2. 接口不包含方法的实现,

  3. 接口、类和结构可以从多个接口继承,

  4. 但是C#只支持但继承:类只能从一个基类继承实现。

接口与类相同点:

  1. 接口、类和结构可以从多个接口继承,