抽象クラスとインタフェースとは?
抽象クラスとインタフェースとは、実装を伴わない操作の集合を宣言し、利用側を具象クラスから切り離すための仕組み。抽象クラスは共通実装と状態を部分的に持たせられるが単一継承の制約を受け、インタフェースは実装を持たない契約のみで多重実装できる。依存関係逆転の実現手段でもある。
ちゅうしょうくらすといんたふぇーす
抽象クラスとインタフェースの意味
実装を伴わない操作の集合を宣言し、利用側を具象クラスから切り離すための仕組み。抽象クラスは共通実装と状態を部分的に持たせられるが単一継承の制約を受け、インタフェースは実装を持たない契約のみで多重実装できる。依存関係逆転の実現手段でもある。
抽象クラスとインタフェースの具体例
帳票出力をReportインタフェースとして定義し、PDF版・CSV版・帳票サーバ連携版を実装する。業務ロジックはインタフェースにだけ依存するため、出力先の追加で業務ロジックを再コンパイルせずに済み、テストではダミー実装に差し替えられる。
抽象クラスとインタフェースは試験でどう引っ掛けられる?
抽象クラスはインスタンス化できないが、コンストラクタやフィールドは持てる。またインタフェースを機能ごとに細かく分けず巨大にすると、実装側が不要メソッドを空実装させられる(インタフェース分離原則違反)。
抽象クラスとインタフェースと関連する用語
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。