什么是接口?接口有哪些好处,抽象类(abstract)和接口(interface)的区别

什么是接口?


  接口是一种用来定义程序的协议,它描述可属于任何类或结构的一组相关行为


  接口是这样定义的: 接口,里面包含方法,但是没有方法的具体实现。


  然后在继承该接口的类中 去实现接口中的所有方法。包括 属性、方法、事件、索引器,但是不能包括字段;


  接口中只能包含 属性、方法、事件、索引器;


  接口可以实现C# 中的多继承。(c#不可以多继承,用接口可以实现) 接口可以继承接口,可以继承多个接口;


  类可以继承接口,但是继承的类必须去实现接口中的方法代码。


  接口不能直接被实例化


  接口一般不用什么修饰符,因为接口默认的修饰符是 public 公共的。


  接口中的所有成员默认为public,因此接口中不能有private修饰符


接口的好处:


  对类的一种约束。
  如果一个项目的需求可能在不断变化的情况下,用接口可以很容易进行拓展,并不影响以前写的功能模块的代码,只要新添加类,继承这个接口就可以了。


  如果每个类都要用到一些公用的属性字段或者方法,则通过继承接口可以方便的实现,不用再每个类中都写一次公用的属性或方法。


 接口中不能包含【常量、字段(域)、构造函数、析构函数、静态成员】


抽象类(abstract)和接口(interface)的区别:


  abstract 类 和接口类似,


  抽象类中定义方法,只有方法名,但不包含主体,不包含实现,和接口一样,


  可以把抽象方法当作没有具体实现的虚方法。


  抽象类不能被实例化。这个接口一样,


  抽象类中并非一定有抽象方法,但是 有抽象方法的类, 一定是抽象类。


  派生类必须覆盖基类的抽象方法,(也就是子类去实现继承类中的方法)


  抽象类中可以包含:属性、普通方法、可以包含虚方法、抽象方法
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值