DBデータベーススペシャリスト試験 午前Ⅱ

令和7年度秋期 データベーススペシャリスト 午前Ⅱ 問24

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

オブジェクト指向における抽象クラスで,できないことはどれか。

選択肢

  1. ア
    インスタンスを生成すること
  2. イ
    サブクラスをもつこと
  3. ウ
    スーパークラスをもつこと
  4. エ
    属性をもつこと
解き方のヒントを見る

抽象クラスを考える視点整理

抽象クラスに関する設問では、継承関係の中で何を共通化し、利用する側にどのような前提や制約を置く設計なのかを、問題文の表現に沿って丁寧に具体的に整理しましょう。

この問題で問われていること

確認する観点は、対象が担う役割と、利用時に求められる前提が同じ説明の中で整合しているかどうかです。用語の印象だけで判断せず、文脈との対応を落ち着いて丁寧に見ます。

視点

抽象クラスを検討するときは、共通の設計意図と、そこから派生する側に委ねられる部分を分けて捉えます。さらに、説明が示す利用場面と制約の関係を、問題文の文脈に照らして確認します。

確認ポイント

  • 共通化される役割と、個別化される役割の区別が説明全体で保たれているか。
  • 利用する側に置かれる前提や制約が、対象の設計意図と矛盾していないか。
  • 用語の一般的な印象ではなく、問題文が示す関係性に沿って説明を読めているか。
正解と解説を見る

正解

ア

解説

抽象クラスは、共通の属性や操作を定義してサブクラスの基盤となるクラスです。一方、抽象クラス自身は未実装の抽象操作などを含むため、直接インスタンス化できない。

理由

抽象クラスは、サブクラスに共通する属性や操作をまとめるためのクラスであり、継承の基盤として利用される。ただし、抽象クラス自身は未完成の仕様を含むため、直接インスタンスを生成することはできない。

比較

サブクラスをもつこと、スーパークラスをもつこと、属性をもつことは、抽象クラスでも可能です。したがって、抽象クラスでできないことは、抽象クラス自身のインスタンス生成です。

選択肢ア(正解)

これは正解だよ。抽象クラスは、共通仕様を定義するための基盤であり、それ自体を完全な実体として扱うことはできない。そのため、抽象クラスから直接インスタンスを生成することはできず、具体化されたサブクラスを利用する。

選択肢イ

これは不正解だよ。抽象クラスは、共通する属性や操作をサブクラスへ引き継がせる基盤として使われる。そのため、抽象クラスがサブクラスをもつことは可能であり、抽象クラスでできないことには該当しない。

選択肢ウ

これは不正解だよ。抽象クラスも通常のクラスと同様に、より上位のクラスを継承してスーパークラスをもつことができる。抽象クラスであることは、スーパークラスとの継承関係を禁止するものではない。

選択肢エ

これは不正解だよ。抽象クラスは、サブクラスに共通するデータを表す属性を定義できる。抽象クラスであることによって属性の保持が禁止されるわけではないため、属性をもつことは可能である。

学習のポイント

抽象クラスの役割と、インスタンス生成の制限を区別して理解する。

出典:独立行政法人 情報処理推進機構(IPA)令和7年度秋期 データベーススペシャリスト試験 午前Ⅱ 問24(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針