スポンサーリンク

【応用情報技術者試験】オブジェクト指向 実践問題10問

実践問題

解答&解説は第1問から第10問までを列挙しています。
まず問題を解いてから解答&解説を見ることを推奨します。

【問1】カプセル化

クラス設計においてカプセル化の目的として最も適切なものはどれか。

A. クラスの再利用性を高めるために継承を利用する
B. データと処理を一体化し、外部からの直接アクセスを制限する
C. 同じ名前のメソッドで異なる処理を実現する
D. 複数のクラス間の依存関係を強める

解答&解説はこちら


【問2】継承

次のうち継承の説明として正しいものはどれか。

A. クラス同士の横の関係を表す
B. 既存クラスの機能を引き継いで新しいクラスを作る
C. 同じクラスから複数のインスタンスを生成する
D. クラスの内部構造を隠す

解答&解説はこちら


【問3】ポリモーフィズム

ポリモーフィズムの説明として最も適切なものはどれか。

A. クラスのデータを隠蔽すること
B. 同一の操作で異なる振る舞いを実現すること
C. クラスを階層構造にすること
D. 処理を高速化する仕組み

解答&解説はこちら


【問4】オーバーライド

オーバーライドの説明として正しいものはどれか。

A. 同名メソッドで引数を変えること
B. 親クラスのメソッドを子クラスで再定義すること
C. クラスの変数を隠蔽すること
D. 複数クラスで同じ名前の変数を持つこと

解答&解説はこちら


【問5】オーバーロード

オーバーロードの説明として正しいものはどれか。

A. 親クラスのメソッドを変更すること
B. 同じ名前のメソッドで引数を変えて定義すること
C. クラスを分割すること
D. メソッドを削除すること

解答&解説はこちら


【問6】UML(多重度)

UMLクラス図において「1対多」の関係を示す多重度として正しいものはどれか。

A. 1..1
B. 0..1
C. 1..*
D. *..1

解答&解説はこちら


【問7】集約とコンポジション

コンポジションの特徴として適切なものはどれか。

A. 部分は独立して存在できる
B. 部分と全体のライフサイクルが独立している
C. 部分は全体に強く依存し、全体が消えると部分も消える
D. 関係が一時的である

解答&解説はこちら


【問8】抽象クラス

抽象クラスの特徴として適切なものはどれか。

A. インスタンス化できる
B. すべてのメソッドが実装されている
C. 共通処理を持ち、一部未実装のメソッドを含む
D. 継承できない

解答&解説はこちら


【問9】インタフェース

インタフェースの説明として正しいものはどれか。

A. クラスの実装を定義する
B. メソッドの具体的処理を持つ
C. メソッドの仕様のみを定義する
D. データを保持する

解答&解説はこちら


【問10】設計原則

単一責任の原則として最も適切なものはどれか。

A. クラスは複数の機能を持つべき
B. クラスは1つの責任のみを持つべき
C. クラスは必ず継承を使うべき
D. クラスは他のクラスに依存すべき

解答&解説はこちら


解答&解説

解答:【問1】

答え:B

👉 カプセル化=「隠す」+「まとめる」
外部から直接触らせないのが本質

問題へ戻る


解答:【問2】

答え:B

👉 継承=既存クラスの再利用
is-a関係がキーワード

問題へ戻る


解答:【問3】

答え:B

👉 多態性=同じ呼び出しで違う動作
例:draw()で円と四角が違う描画

問題へ戻る


解答:【問4】

答え:B

👉 オーバーライド=上書き
親の処理を子で変える

問題へ戻る


解答:【問5】

答え:B

👉 オーバーロード=引数違い
名前は同じ・中身は別

問題へ戻る


解答:【問6】

答え:C

👉 1..* =1対多
ここは暗記レベルでOK

問題へ戻る


解答:【問7】

答え:C

👉 コンポジション=強い依存
「一緒に消える」が判断軸

問題へ戻る


解答:【問8】

答え:C

👉 抽象クラス=一部未完成
共通処理+抽象メソッド

問題へ戻る


解答:【問9】

答え:C

👉 インタフェース=仕様だけ
実装は持たない(原則)

問題へ戻る


解答:【問10】

答え:B

👉 単一責任=1クラス1役割
設計問題で頻出

問題へ戻る


■ワンポイント(合格ラインに乗せるコツ)

この10問の中で特に重要なのは👇

  • 問1〜3(基本3要素)→絶対落とさない
  • 問4・5(違い問題)→ひっかけ対策
  • 問7(設計問題)→応用レベル

コメント