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

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


接口

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

普通类

  • 不能有抽象方法

抽象类

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


接口、抽象类区别

相似点

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

都不能直接实例化

 

区别

 

抽象类

接口

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

类可以实现多个接口

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

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



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

20141128

22:56

 

抽象类专有

函数体

子类必须实现

子类重写后具有多态性

虚方法

 

必须有

NO

YES

抽象方法

YES

必须没有

YES

YES

普通方法

 

必须有

NO

NO


C__抽象类与抽象方法

  • 2011年10月24日 15:13
  • 99KB
  • 下载

C#抽象类与抽象方法

  • 2011年05月10日 16:17
  • 99KB
  • 下载

设计模式基础——抽象类、抽象方法、接口与虚方法

抽象类 定义:不能初始化的类被叫做抽象类,它们只提供部分实现,但是另一个类可以继承它并且能创建它们。 抽象类的功能:为子类提供功能约束。与接口不同的是它还有其他普通方法、成员变量等。 样子,以a...

抽象类 接口 抽象方法 虚方法【基本说明】

首先我们说一下抽象类和接口: 抽象类:用 abstract 修饰的类是抽象类。 抽象类中包含的内容:抽象方法,也可以是非抽象方法,字段,属性 【概括-仅个人之言】抽象类就是一个写来被继承的类,不...
  • iml6yu
  • iml6yu
  • 2017年07月11日 16:33
  • 64

抽象类、抽象方法、接口的区别及实现

一、抽象类、抽象方法 抽象方法:类的成员方法,只有声明,没有实现,把实现交给子类。 抽象类:含有抽象方法的类。 1.有抽象方法的类一定是抽象类,但抽象类里可以没有抽象方法(当然也...
  • aionbo
  • aionbo
  • 2016年10月17日 11:49
  • 670

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

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

抽象类与抽象方法,接口

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

JAVA 抽象类 抽象方法 接口

抽象类 不应该被实例化的类,不能被new出来,有一种抽象的意义 例: Animal-->bird--->nightinggale Animal类如果被初始化是什么样子的?没有意义 于...

【Java学习笔记】接口 抽象类 抽象方法

一 接口 1.不允许多重继承类,可以多重继承接口,继承的多个接口之间用逗号分开。 2.接口中定义的常量默认为public, static,and final 。定义的方法都默认是public的 ...

抽象类和抽象方法以及和接口的区别

abstract 抽象类是不能被实例化的类,可以由其子类来实例化,就像模板一样(就像猫科,犬科),目的是根据其格式和要求来新建对象。当一个类被声明为抽象类时,要在这个类前面加上修饰符abstract...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:接口、抽象类、虚方法、抽象方法、普通方法理清
举报原因:
原因补充:

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