令和7年度 秋期 午前Ⅱ 問24
システム開発技術
抽象クラスに関する問題
オブジェクト指向における抽象クラスで,できないことはどれか。
- アインスタンスを生成すること
- イサブクラスをもつこと
- ウスーパークラスをもつこと
- エ属性をもつこと
答えと解説を見る
✓ これが正解アインスタンスを生成すること
解説
抽象クラスからはインスタンスを生成できません。
抽象クラスは、具体的な処理の中身を持たない操作(抽象操作)を含むなどして、それだけでは完成していないクラスです。そのため、抽象クラスから直接インスタンスを生成することはできません。抽象クラスは、共通の属性や操作をまとめておき、それを継承したサブクラスで中身を具体化してから、サブクラスのインスタンスを生成して使います。属性を持つことも、別のクラスのサブクラスになる、つまりスーパークラスを持つこともできます。見分ける軸は、抽象クラスが継承の上下関係の中でどんな役割を担うかです。共通部分をまとめるための型で、それ自体は実体を作らない、と押さえておきましょう。
ほかの選択肢はなぜ違うのか
- イサブクラスをもつこと:抽象クラスは、サブクラスに継承されて中身を具体化してもらうことを前提にしたクラスです。サブクラスを持つことは抽象クラスの使い方そのものであり、できないことではありません。
- ウスーパークラスをもつこと:抽象クラスも、さらに上位のクラスを継承することができます。抽象クラスが別のクラスのサブクラスになり、スーパークラスを持つことに制限はないので、できないことには当たりません。
- エ属性をもつこと:抽象クラスは、サブクラスに共通する属性をまとめて持つことができます。共通の属性や操作を一か所に定義して継承させるのが抽象クラスの役割の一つであり、属性を持つことはできます。
出典:令和7年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問24
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)