2013-11-26 119 views
1

为什么我们无法创建抽象类和接口的实例?手段,抽象类和接口不能实例化,只能由Class实现。为什么抽象类和接口不能被实例化?

+2

你可以。他们被称为具体类。 –

+0

为什么你需要实例化它们? – Muctadir

+0

@Muctadir可能会生成'C++'-ish错误“纯虚函数调用...” –

回答

2

我喜欢this answer

一个抽象类是一种特殊的类不能被实例化 。所以问题是为什么我们需要一个不能被 实例化的类?一个抽象类只能被分类(继承自 )。换句话说,它只允许其他类从它继承 ,但不能实例化。优点是它为所有子类强制执行某些 层次结构。简而言之,它是一种强制所有小类继承相同层次结构或标准的合同。

接口不是一个类。它是由 字界面定义的实体。接口没有实现;它只有 签名或换句话说,只是没有正文的方法 的定义。作为Abstract类的一个相似之处,它是用于为所有子类定义层次结构的契约,或者它定义了特定的一组方法及其参数。

0

在正常情况下,这是因为创建一个类的实例需要的内存块被预留给该实例方式支付。一个抽象类或接口不包含所有的信息需要创建它的一个实例。它只包含描述课程所需的信息。

试图创建一个抽象类或接口的实例就像花钱在一盒砖上,但它里面没有任何东西。你只有外面,里面没有东西。

相关问题