「D言語/オブジェクト指向」の版間の差分

削除された内容 追加された内容
Ef3 (トーク | 投稿記録)
→‎C++とDとのオブジェクト指向の差異: D言語とC++は両方ともオブジェクト指向言語ですが、いくつかの重要な差異があります。
タグ: 2017年版ソースエディター
Ef3 (トーク | 投稿記録)
校閲と推敲
タグ: 2017年版ソースエディター
 
1 行
D言語は、C++やJavaといったオブジェクト指向言語と同様に、オブジェクト指向プログラミングをサポートしています。
オブジェクト指向プログラミングは、プログラムの構造をオブジェクト(実体)として定義し、オブジェクト同士の相互作用によってプログラムを構築する方法です。
この章では、D言語におけるオブジェクト指向プログラミングについて、本的な概念から具体的な実装方法まで解説します。
具体的には、クラスやオブジェクトの定義方法、継承やポリモーフィズムといったオブジェクト指向の重要な概念について説明します。
また、D言語のオブジェクト指向プログラミングにおける特徴や、他のオブジェクト指向言語との比較についても触れます。
 
この章を読むことで、D言語におけるオブジェクト指向プログラミングの基礎を身につけ、より効率的で柔軟性の高いプログラムを作成することができるようになるでしょう。
 
7 ⟶ 11行目:
 
==== 実体化 ====
クラスは雛形に過ぎないため、実際に変数として使うためには定義宣言した後に'''実体化(インスタンス化)'''という作業がする必要にながあります。Cという例えば、クラスCのオブジェクトc1を宣言するに、以下のように実体化します。
 
<syntaxhighlight lang="D">
13 ⟶ 17行目:
c1 = new C();
</syntaxhighlight>
で実体化できます。これ以降c1newはオブジェクトC型の変数として扱う事ができます。newが実体化ヒープにアロケートする命令演算子あり、その対象はCというクラス、という事です。空白の()は後述するコンストラクタに何も指定しないことを意味します。
 
で実体化できます。これ以降c1をC型の変数として扱う事ができます。newが実体化する命令で、その対象はCというクラス、という事です。空白の()は後述するコンストラクタに何も指定しない事を意味します。
 
==== メンバ変数 ====