「クラスベース」の版間の差分
削除された内容 追加された内容
編集の要約なし |
見出し |
||
1行目:
{{出典の明記|date=2015年12月}}
'''クラスベース''' ({{lang-en-short|Class-based}}) は、[[オブジェクト指向プログラミング]](OOP)のスタイルのひとつであり、[[オブジェクト (プログラミング)|オブジェクト]]の生成に[[クラス (コンピュータ)|クラス]]を用いるスタイルを指している。OOP
クラスベースOOPは、先発の[[アラン・ケイ]]の[[Smalltalk]]流と、後発の[[ビャーネ・ストロヴストルップ]]の[[C++
クラスベースOOPでの[[オブジェクト (プログラミング)|オブジェクト]]は、総じて[[クラス (コンピュータ)|クラス]]を実体化した[[インスタンス]]と定義されている。クラスは、[[プロパティ (プログラミング)|状態]]と[[メソッド (計算機科学)|振る舞い]]の構成を定めた一種の[[型システム|型]]であり、オブジェクトのひな型や設計図に例えられている。クラスには[[カプセル化]]、[[継承 (プログラミング)|継承]]、[[ポリモーフィズム]]をサポートするメカニズムが備えられているのが普通である。Smalltalkのクラスは、[[メタクラス]]の[[インスタンス]]でもあるので[[オブジェクト (プログラミング)|オブジェクト]]である。C++流の[[クラス (コンピュータ)|クラス]]はただの[[型システム|型]]であり、そのインスタンスがオブジェクトである。
C++流のクラスベースは、[[静的型付け]]と[[動的型付け]]で二分されている。[[静的型付け]]はクラスの構成解釈=オブジェクトの型チェックをコンパイル時にする機構であり、[[動的型付け]]はクラスの構成解釈=オブジェクトの型チェックを実行時にする機構である。<!--<ref>http://d.hatena.ne.jp/sumim/20040525/p1 を参照</ref>-->
== 脚注 ==
|