クラス (コンピュータ)
継承(inheritance)または拡張(extension)とも呼ばれる。継承の目的は、単純なクラスに基づいてもっと複雑なクラスを構成することである。また、複雑なクラスはそれを定義する単純なクラスに従属するという意味で、クラスに階層をつけることができるようになる。継承の基になったクラスを親クラス/基本クラス/基底クラス/スーパークラスなどといい、継承してできたクラスを子クラス/派生クラス/サブクラスなどという。派生クラスのインスタンスはまた基本クラスのインスタンスとしても扱えるようになる(リスコフの置換原則)。継承により、後述のポリモーフィズムを実現することができるようになる。
UMLでは継承のことを汎化 (generalization) と呼んでいる。汎化とはスーパークラスによる抽象化であり、対義語の特化 (specialization) はサブクラスによる具象化を指す。
また、オブジェクト指向を効率よく使いこなすためには継承だけでなく集約 (aggregation)、委譲 (delegation) を理解する必要がある。
継承は、開放/閉鎖原則に基づき、単純な基本クラスからより複雑な派生クラスを構成する機構であり、コードの再利用と拡張を容易にする。逆に複雑なクラスの所属物のいくつかを除いて単純なクラスを構成しようとすると、コードの再利用と拡張を阻害することになる。