クラスとオブジェクト
[TOP]
クラスとは、仕事ごとに一つにまとめたプログラムのことです。たとえば、あるプログラムから「印刷する」という仕事だけをきりはなして、これを一つのクラスとしてまとめたとします。この印刷するというクラスの中には、ページ数を変更したり、用紙のサイズを変更したりする機能も組み込まれています。印刷するという機能は、ワープロソフトや、画像を編集するソフトなどいろいろなアプリケーションで必要とされる機能で、アプリケーションを作成するたびにこの機能を作り直していては、非常に面倒です。また操作の仕方もアプリケーションごとに変わってしまい、ソフトを利用するユーザーにとっても不便です。
そこで何度でも使われる機能は、クラスという単位でひとつにまとめてしまい、いろいろなアプリケーションから再利用できることを目的として考案された単位がクラスであり、このような再利用を目的とする考え方を「オブジェクト指向」と言います。
では、早速サンプルプログラムを見ていきましょう。
class Print
{
//「印刷するプログラム」
}
class main_program
{
public static void Main(){
Print pri = new Print(); //印刷するクラスのオブジェクトを作成
}
}
クラスを定義する際は、先頭に「class」と指定し、続けてクラス名を入力します。
クラスを利用する際は、データ型を宣言する時と同じような方法で、クラスを宣言します。
クラス名に続けて、そのクラスを識別するための変数名を入力し、new演算子を使ってその変数に必要なメモリを割り当てます。
このクラスのさまざまな機能を利用するときは、ここで宣言した変数を使って、アクセスしていくことになります。
上記サンプルでは、変数priをクラス型で宣言しています。このpriのことをオブジェクトといい、クラス内の様々な機能を利用するための識別子として利用されます。
※ちなみに、配列と同じように、オブジェクトpriにはオブジェクトを置いたメモリ領域の先頭アドレスが格納されます。
new演算子は動的にメモリを確保して、その先頭アドレスを返します。
メモリ領域へのアドレスが格納される変数のことを参照型といい、値が直接代入される変数のことをを値型といいます。
C#では参照型の変数を利用することも多いので、値型と区別してイメージできるようにしておきましょう。
戻る
※当サイトは、リンクフリーです。