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

原创 2015年11月19日 14:40:29


接口

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

普通类

  • 不能有抽象方法

抽象类

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


接口、抽象类区别

相似点

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

都不能直接实例化

 

区别

 

抽象类

接口

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

类可以实现多个接口

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

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



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

20141128

22:56

 

抽象类专有

函数体

子类必须实现

子类重写后具有多态性

虚方法

 

必须有

NO

YES

抽象方法

YES

必须没有

YES

YES

普通方法

 

必须有

NO

NO


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C__抽象类与抽象方法

  • 2011-10-24 15:13
  • 98KB
  • 下载

Java抽象类和抽象方法、接口

一、抽象类、抽象方法1、抽象类抽象方法就是以abstract修饰的方法,这种方法只声明返回的数据类型、方法名称和参数,没有方法体,也就是说抽象方法只需要声明而不需要实现。 1. 被abstract...

C#抽象类与抽象方法

  • 2011-05-10 16:17
  • 99KB
  • 下载

抽象类与抽象方法,接口

最近又重新学习了抽象类,抽象方法,以及接口,似乎又深入理解了一些,也对面向对象的思想理解得更深了。              我在百度搜了一下,找到了一个理解抽象类和抽象方法的文章,文章如下: ...

Java面向对象05-抽象方法,抽象类和接口

static final 常量 必须声明同时初始化,不可被改变 通过类名.来访问 声明的常量要大写 在编译时直接替换成常量值 俩个修饰符位置可互换 抽象方法 由abstract修饰 只有方法的定义,没...

php面向对象(三),抽象类,抽象方法,接口及php的”重载“

抽象类 定义:一个抽象的不能被实例化的类。 定义形式(abstract关键字):abstract class 类名{ // ... } 抽象方法 定义:一个只有方法头,没有方法体的方法 定义形...
  • ydxlt
  • ydxlt
  • 2016-02-15 11:52
  • 2667

PHP中抽象方法、抽象类和接口的用法

1. 抽象方法 在类中,没有方法体的方法就是抽象方法。 abstract 可见性 function 方法名称(参数1,.....);      // 如果没有显示地指定可见性,则默认为publ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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