`
qcyycom
  • 浏览: 182098 次
社区版块
存档分类
最新评论

抽象类 ??--->接口

 
阅读更多

抽象类(abstract):

抽象类是一种特殊的类,特点如下:

1. 抽象方法只做声明,而不包含实现,可以看成是没有实现的虚方法;

2.抽象类不能被事例化,除此,跟其他类的特性一样;

3.具体派生类必须覆盖基类的抽象方法;

接口(interface):

1.不能被事例话;

2.只能包含实现的方法声明;

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

接口是负责功能的定义,项目中通过接口来规范类,操作类以及抽象类的概念!
而类是负责功能的具体实现! 在类中也有抽象类的定义。

抽象类与接口的区别在于:

区别一:
抽象类是一个不完全的类,类里面有抽象的方法,属性,也可以有具体的方法和属性,需要进一步的专业化。
但接口是一个行为的规范,里面的所有东西都是抽象的!
一个类只可以继承一个基类也就是父类,但可以实现多个接口。

例如:飞机会飞,鸟也会飞,那么我们可以这么说他们都是继承了同一接口“飞”,“歼十”是属于飞机的抽象,鸽子是属于鸟的抽象;

区别二:

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

public abstract class AbsTest
{
public virtual void Test()
{
Debug.WriteLine( "Test" );
}
public abstract void NewTest();
}
public interface ITest//为了项目的规范;
{
void Test();
void NewTest();
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics