关闭

接口、抽象类、虚方法、抽象方法、普通方法理清

418人阅读 评论(0) 收藏 举报
分类:


接口

  • 不能有字段,常量等,只能有方法
  • 方法必须是public并且不能带其他关键字修饰(不能是静态
  • 方法不能有函数体

普通类

  • 不能有抽象方法

抽象类

  • 不能实例化
  • 专有抽象方法(抽象方法不能在具体类里声明)
  • 可以有具体字段和方法还有虚方法
总结:抽象类除了不能实例化、专有抽象方法外,其他限定与普通类没区别。


接口、抽象类区别

相似点

都包含可以由派生类继承的成员

都不能直接实例化

 

区别

 

抽象类

接口

类只能继承一个基类,也就是只能继承一个抽象类

类可以实现多个接口

可以拥有抽象成员和非抽象成员或者虚函数

方法不能有具体实现,必须公有,不能有静态成员、字段、常量、构造和析构函数



虚方法、抽象方法、普通方法

20141128

22:56

 

抽象类专有

函数体

子类必须实现

子类重写后具有多态性

虚方法

 

必须有

NO

YES

抽象方法

YES

必须没有

YES

YES

普通方法

 

必须有

NO

NO


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:36520次
    • 积分:635
    • 等级:
    • 排名:千里之外
    • 原创:27篇
    • 转载:1篇
    • 译文:0篇
    • 评论:11条
    最新评论