一个抽象的对象

时间:2014-12-16 16:48:41

标签: java oop

我正在寻找抽象对象的定义。我在教科书中找不到它,我试过谷歌搜索。我理解的抽象类和方法。谁知道抽象对象是什么?

3 个答案:

答案 0 :(得分:3)

没有抽象对象这样的东西,因为对象会暗示某些东西是真实的,抽象不可能是真实的。因为它是抽象的。

用外行人的话来说,你不能实例化抽象类,而实例化的类就是一个对象。

答案 1 :(得分:2)

有抽象类和方法,没有抽象对象这样的东西。 您无法从Abstract类实例化Object。 你必须让另一个类扩展它并覆盖它拥有的所有抽象方法。

这就是为什么使用抽象类,为一组必须扩展它的类设置一些约束。

您应该查看继承以了解为什么使用抽象方法。

答案 2 :(得分:0)

抽象对象的概念没有在语言中建模这一事实并不一定意味着它没有多大意义。当我们使用对象和消息来表示给定现实或幻想的元素时,其中一些将具有比其他更具体的含义。例如,如果类是系统中的第一类对象(参见Smalltalk),那么与它们的实例相比,这些对象可以被认为是抽象的,因为它们不代表事物,而是与这种事物相关的概念。

例如,类WaterMolecule将具体作为一个类,其实例 - 代表H2O分子 - 也将是具体的(如此问题的先前答案中所述)但是类WaterMolecule本身,当被认为是一个对象,符合抽象对象的概念。

我们可以说一个类是级别1的抽象。级别2的抽象对象的一个​​例子是类的类,即元类。如果元类在语言中表示为对象,则可以作为级别2的抽象对象。注意,您可以更进一步考虑这些对象的类,这些对象可以作为具体类(其实例是元类),同时作为抽象对象(级别3)。