接口与抽象类

原创 2012年03月26日 15:05:19

本质上讲,接口是一种特殊的抽象类这种抽象类中指定实现该接口的类必须提供的成员,实现接口的类就必须要实现接口中的所有方法和属性。
1.解决一个类不能继承多个类问题,一个类可以支持多个接口。
2.通过接口多个不相关的类可以实现各自的行为,多个类也可以支持相同的接口。

interface IShape   <将class改为interface>
{
     void Draw();
}
 class Circle : IShape
 {
        private double x;
        private double y;
        private double z;
        public Circle(double x, double y, double z)
        {
            this.x = x;
            this.y = y;
            this.z = z;
        }
        public void Draw()
        {
            System.Console.WriteLine("x:"+x+"\n"+"y:"+y+"\n"+"z:"+z);
        }
 }
static void Main(string[] args)
{
     IShape circle1 = new Circle(2, 3, 4);
     circle1.Draw();
     Console.ReadKey();
}
接口与抽象类区别
1.类是对对象的抽象,抽象类是对类的抽象,接口是对行为的抽象。
2.如果行为跨越不同类的对象,可使用接口。
3.抽象类是从子类中发现了公共的东西,泛化出父类,然后子类继承父类,而接口是根本不知子类的存在,方法如何实现还不确认,预先定义。

相关文章推荐

Java-面向对象(高级篇)--抽象类与接口的应用

抽象类与接口的应用 一. 抽象类的实际应用——模板设计 通过对象的多态性可以为抽象类实例化,那么抽象类该如何使用那?假设人分为学生和工人,学生和工人都可以说话,但是说的内容不相同,那么说话的功能...

抽象类和接口的区别

  • 2014年04月23日 19:24
  • 3KB
  • 下载

关于接口和抽象类的案例

  • 2014年08月25日 21:28
  • 619B
  • 下载

工作总结-C#抽象类,接口,以及UnityAction

C#的抽象类及接口设计蛮奇怪。先说抽象类,抽象类允许抽象方法,也允许不抽象的方法。额外一提,当你使用子类去继承基类完成方法重写时,千万要记得用override来修饰你的方法声明,否则c#不会认为你在重...

Java抽象类和接口

  • 2014年09月13日 12:15
  • 1KB
  • 下载

JAVA中抽象类与接口的区别

  • 2014年05月06日 22:23
  • 49KB
  • 下载

抽象类和接口分别应该在什么时候使用

(转载)http://www.onmpw.com/tm/xwzj/prolan_151.html 在本篇我们将要学到在什么情况下使用抽象类要比使用接口程序更有效率。 抽象类的使用 一个抽象类...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:接口与抽象类
举报原因:
原因补充:

(最多只允许输入30个字)