日期:2014-05-18  浏览次数:20680 次

我想你知道。。。。
接触软件开发都有半年了
  当对“接口”这东西始终弄不明白
  您能告诉我“接口”到底是什么吗

------解决方案--------------------
接口是使用 interface 关键字定义的。例如:

C# code
interface IComparable
{
    int CompareTo(object obj);
}

------解决方案--------------------
类和结构可以像类继承基类或结构一样从接口继承,但有两个例外: 

类或结构可继承多个接口。

当类或结构继承接口时,它继承成员定义但不继承实现。例如:

C# code
public class Minivan : Car, IComparable
{
    public int CompareTo(object obj)
    {
        //implementation of CompareTo
        return 0;  //if the Minivans are equal
    }
}

------解决方案--------------------
接口具有下列属性:

接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有成员。

不能直接实例化接口。

接口可以包含事件、索引器、方法和属性。

接口不包含方法的实现。

类和结构可从多个接口继承。

接口自身可从多个接口继承。

------解决方案--------------------
详细请看 msdn 。
------解决方案--------------------
接口就是定义游戏规则
------解决方案--------------------
不是有个例子么
货车 轿车 跑车 都属于汽车
有个共性就是都能坐人,也可以说只要一个对象实现了“坐人”这个接口
这一组对象就有了相同的地方,或者说是契约
比如:
interface 坐人
{
void 上车();
void 下车();
}

class 自行车:坐人
{
public void 上车()
{
//上车
}
public void 下车()
{
//下车
}
}
------解决方案--------------------
编程语言上的接口是一种用来规定类应该有哪些属性或者方法的东西。至于,应用程序之间的接口就可以理解为函数了。
------解决方案--------------------
由于从C++以来的OOL都不让类实现多重继承,然而又有这方面的需求,因此有了这么个折衷的玩艺
------解决方案--------------------
一句话...接口就是约定...我说做什么应该怎么做你照着做就是我提供给你的接口...
------解决方案--------------------
同意楼上,
的确是为了满足多重继承的需求
------解决方案--------------------
觉个例子,不知道对不对
一个USB"接口"可以接很多牌子的USB
------解决方案--------------------
不同意“折衷”的说法...多重继承具有不确定性...接口解决了继承路径不确定性并能够实现松耦合...是一种进步...
------解决方案--------------------
楼上的说,接口就是约定,我同意,但它还是解决C#不支持多继承的一种手段,还有要想实多态接口是非常重要的,好好看看OOP的特点吧
------解决方案--------------------
楼上...接口的年龄比C#大得多...多看点书吧...
------解决方案--------------------
借口就是没有实现代码的类...简单点应该可以这么理解