抽象类 ??--->接口
2011-04-28 16:39
183 查看
抽象类(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();
}
抽象类是一种特殊的类,特点如下:
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();
}
相关文章推荐
- java 从零开始,学习笔记之基础入门<抽象类_接口_多态>(十三)
- C#基础-->抽象类(abstract)和接口(Interface)
- Java基础<七>--->抽象类、接口、内部类、异常等
- JAVA:类的三大特征,抽象类,接口,final关键字<3>
- <Java>接口与抽象类,区别以及使用场景
- 抽象类 ??--->接口
- 抽象类 ??--->接口
- java基础---->接口和抽象类
- java基础---->接口和抽象类
- 《黑马程序员》java笔记->【03】接口和抽象类的区别
- 黑马程序员--JAVA<面向对象>--构造函数、抽象类、接口、多态
- Java学习笔记<1>(抽象类和接口)
- 黑马程序员 Java基础<三>抽象类与接口概念
- Java笔记2 面向对象<3>final关键字、抽象类、模板方法模式、接口
- 黑马程序员 Java基础<三>---> 抽象类、与接口
- Java学习学习之路0801<复习>(抽象类、日期Date、接口)
- IEnumerator<TItem>和IEnumerator Java 抽象类和普通类、接口的区别——看完你就顿悟了
- 黑马程序员——Java基础---面向对象(封装、继承、单例、抽象类、接口、内部类)
- python里面的接口和抽象类有什么不同?
- Java 接口和抽象类