C#接口

1.接口包括:接口方法、接口属性、接口事件、接口索引;

2.接口成员的默认访问方式是public,接口成员定义不能包含任何修饰符;

3.接口成员不能同名;

4.显式与隐式实现接口的区别:

   显式实现接口成员只能通过接口的定义来访问;而隐式实现接口成员既可以通过接口访问,又可以通过类访问;

   显式实现接口成员执行体在某种意义上讲是私有的;隐式接口实现接口成员执行体则是公有的;

5.接口与抽象类的区别

  第一,两者表达的概念不一样。抽象类是一类事物的高度聚合,对于继承抽象类的子类来说,属于“是”的关系;而接口定义行为规范,对于实现接口的子类来说,是“行为需要按照接口来完成”。

 第二,抽象类在定义方法的时候,可以给出方法的实现部分,也可以不给出;而对于接口来说,其中所定义的方法都不能给出实现部分。

 第三,继承类对于两者所涉及的方法的实现是不同的。继承类对于抽象类所定义的抽象方法,可以不重写,也即是可以延用抽象类的方法,而对于接口类所定义的方法或者属性来说,在继承类中必须要给出相应的方法和属性实现。

 第四,在抽象类中新增一个方法,继承类中可以不用做任何处理;而对于接口来说,则必须修改继承类,提供新定义的方法; 

 第五,一个类一次可以实现若干个接口,但是只能继承一个抽象类。

6.接口与抽象的使用

 第一,抽象类用于一个类的部分实现,然后再由用户按需求对其进行不同的扩展和完善;接口只是定义一个行为的规范或者规定;

 第二,抽象类在组件的所有实现中提供通用的已实现功能。接口创建在大范围全异对象间使用的功能;

 第三,抽象类主要用于关系密切的对象;而接口适合为不相关的类提供通用功能;

 第四,抽象类主要用于设计大而复杂的功能单元;而接口用于设计小而简练的功能块。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值