在 Java 中使用摘要 class

Use of an abstract class in Java

我在 tutorial 中找到了这个语句: "If a class is abstract and cannot be instantiated, the class does not have much use unless it is SUBCLASS"

这似乎是错误的。 我想知道他们真正的意思是不是: "If a class is abstract and cannot be instantiated, the class does not have much use unless it is a SUPERCLASS".

你同意吗?谢谢。

也许真正的意思是 "unless it is SUBCLASSED"(这意味着创建了它的子 类),这更有意义。

一个Abstract class是一个class,它的行为由它的子class定义(尽管可以为抽象class 作为基础 class)。

因此,如果您没有 subclass(es) 实现该行为,那么它就真的没有用了。 (这反映在不允许您实例化抽象 class)

"If a class is abstract and cannot be instantiated"

不是正确的陈述,因为抽象 class 永远无法实例化。

摘要class

   1.Define structure, identity and some default supported behaviour .
   2. Applicable to show vertical inheritance, i.e. deep branching on the several levels (e.g. AbstractEntity class in domain driven development)
   3. Members can have different visibility (from public to private)
   4. You can implement some members (e.g. *Reader classes)
  5.  Inheritance child can have only one base abstract class

我一直在阅读该教程,这不是最糟糕的句子。例如:

"Abstraction refers to the ability to make a class abstract in OOP."

总的来说,"tutorial" 的作者似乎在绕过所有概念,对他或她在别处找到的句子进行措辞,但并没有真正理解它们。

如果您正在学习面向对象编程,验证您的来源是一个很好的起点。 Bruce Eckel 的书被认为是非常好的学习资源,您可以购买一本、下载本书的开头部分或下载完整的上一版:

http://www.mindviewinc.com/Books/TIJ4/PurchaseBook.php

仅仅阅读免费演示会让你比完整的更好"tutorial"。