応用情報技術者試験 2012年度 = 平成24年度・春期 午前 問45

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

ア インスタンスを生成すること
イ サブクラスをもつこと
ウ スーパクラスをもつこと
エ 属性をもつこと

解答



解説

 抽象クラス(abstract class)は、抽象メソッド(純粋仮想関数)をもつクラスであり、インスタンス化(具象化)できないという特徴があります。サブクラスにおいて抽象メソッドがオーバライドされることを前提としたクラスであり、その目的はサブクラスとのあいだに多相性をもたせることです。

 抽象クラスのインスタンスを生成することはできません。

 抽象クラスはサブクラスをもつことができます(抽象クラスのインスタンス化はできませんが、抽象メソッドをオーバライドしたサブクラスはインスタンス化できます)。

 抽象クラスはスーパークラスをもつことができます。なお、スーパークラスは、抽象クラスであっても、非抽象クラスであっても構わないことになっています。

 抽象クラスは属性をもつことができます。


BohYoh.comトップページへ