汎化・特化とは?はんか・とっか
汎化・特化とは、複数のクラスに共通する属性や操作を括り出して上位クラスを作る方向が汎化、上位クラスを引き継ぎつつ固有の性質を足して下位クラスを作る方向が特化。UMLでは下位から上位へ白抜き三角の矢印を向けて描き、実装では継承にあたる。下位を上位として扱えるため、上位だけを知る処理を共通化できる。
最終更新:2026-10-06
ネットワークSPを最短で暗記・合格する →背景
同じ属性を各クラスに重複して持たせると、項目をひとつ足すだけで全クラスを直すことになる。機器台帳がまさにその形で、ルータ・スイッチ・ファイアウォールに管理IPやシリアル番号を別々に持たせると、保守契約の欄を足すたびに全部を触る羽目になる。共通部分を上位に括り、変更の当たる場所を1か所へ寄せるための整理が汎化である。
具体例
NetBoxの機器台帳では、ルータ・L3スイッチ・ファイアウォールに共通する管理IP・設置ラック・保守契約を上位の「装置」として持ち、ルーティングプロトコルの設定はルータ固有の属性として下位に置く。監視システムは上位の「装置」だけを見れば死活監視を回せるので、機種を足しても監視側は作り直さずに済む。
試験での引っ掛け
汎化は「is-a(ルータは装置である)」、集約は「has-a(装置はインタフェースを持つ)」で、この取り違えが定番。多重度が付くのは集約や関連の側で、汎化には多重度を書かない。矢印の向きも下位から上位で、逆に描いた図を選ばせる設問がある。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。