类层次结构,也称为类分类法,是一组相关的类,它们通过继承连接起来做类似的事情。层次结构的顶部可以是一个基类,它下面的所有其他类都是从中派生出来的,或者层次结构可以有多个基类,这些基类的功能稍后会在一个或多个派生类中合并在一起。这些类之间的关系可以用树表示,大分类法中的每个较小的树也可以被视为一个层次结构 C++允许多重继承,所以复杂的层次结构可以由多个根和多个树合并而成。不是所有的类层次结构都可以有多个根,任何类层次结构都依赖于它所写的语言。C++允许多重继承,因此复杂的层次结构可以用多个根和多个树来合并,另一方面,java®仅限于单继承,所以它的类关系通常更简单,构建为具有单个根的相对独立的树。接口继承可能会给Java®中的类层次结构增加一些复杂性,但接口几乎从未在如此复杂的框架中调用,就像将树合并在一起一样类层次结构的组件可以在类型和功能上有所不同,只要在继承方面始终遵循语言的规则。层次结构中的类可以是公共的、受保护的、抽象的、具体的或虚拟的也可以使用接口、全局函数和友元。根据计算机语言的不同,这些类型中的某些类型可能比其他类型更适合继承。一般来说,层次结构非常灵活,可用于多种用途对于特定类型的类必须放在层次结构中的位置,没有硬性规定。任何类都可以是上面提到的任何类型。一般来说,层次结构中没有派生类的最后一个类应该是公共的和具体的。因为纯抽象类层次结构可以尽管类层次结构是组织代码和封装功能的有用工具,但有时深入研究层次结构可能会混淆代码在许多类之间建立一个健壮的关系需要一定的预见性;虽然最初将代码分成许多小块可能更容易,但是这些小块可能在以后变得更难处理。如果构建得当,类层次结构可以帮助开发人员和用户确定类如何工作。如果它是在没有维护和清晰的情况下构建的,那么回顾和理解继承的许多级别可能会令人困惑
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!