A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 邬诚 中级黑马   /  2012-5-12 20:59  /  1979 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

什么是接口啊

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

6 个回复

倒序浏览
接口(interface)

     同一计算机不同功能层之间的通信规则称为接口。接口分为硬件接口和软件接口
     不同之处是硬件接口能看到见摸得着。电脑上有许多的接口,比如插鼠标的,网线的等都的接口(这是硬件接口)。
     而软件的接口则是对接口一词原义的引申。软件的接口具有两种众所周知的含义:
     其一是指软件本身的狭义“接口”,比如各种软件开发API等。
     其二则指的是人与软件之间的交互界面。我们把这种人- 软件之间的接口称作"用户界面",也就是"UI”。
     接口是对协定进行定义的引用类型。其他类型实现接口,以保证它们支持某些操作。接口指定必须由类提供的成员或实现它的其他接口。
     与类相似,接口可以包含方法、属性、索引器和事件作为成员。

评分

参与人数 1技术分 +2 收起 理由
宋天琪 + 2

查看全部评分

回复 使用道具 举报
在C#面向对象中接口定义的方式与类的方式是类似的,但使用的是关键字interface。访问修饰符关键字public和internal的使用方式是相同的,但关键字abstract和sealed不能在接口中使用,因为这两个修饰符在接口定义中是没有意义的。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
接口简单理解就是一种约定,使得实现接口的类或结构在形式上保持一致。个人觉得,使用接口可以使程序更加清晰和条理化,这就是接口的好处,但并不是所有的编程语言都支持接口,C#是支持接口的。注意,虽然在概念上,C#接口类似于COM接口,但他们的底层结构是不同的。

一个接口定义一个只有抽象成员的引用类型。C#中一个接口实际所做的,仅仅只存在着方法标志,但根本就没有执行代码。这就暗示了不能实例化一个接口,只能实例化一个派生自该接口的对象。
接口可以定义方法、属性和索引

评分

参与人数 1技术分 +2 收起 理由
宋天琪 + 2

查看全部评分

回复 使用道具 举报
接口是实现和多态的一种机制,与c++中的含有虚函数的类类似,有了接口,那么就不用知道具体怎样实现的,只要知道接口就可以了。c#中有interface关键字,这比c++中使用virtual方便。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
注意访问修饰符在不同处会使接口通或不通问题

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
就是把非静态的公共实例方法和属性组合在一起,以封装特定功能的集合。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马