■ メソッドとは |
プログラムを作る時、同じような処理をいくつも書く必要が出てくることがあります。 このような場合、その都度プログラムを記述していると、大変面倒で時間がかかるだけでなく、すでに正しく動いたプログラムを再度書くことによって、新たな誤りも起こる可能性があります。 このようなことを避けるために、あるまとまりのある処理をひとつのプログラムとして記述しておき、それを別のプログラムから実行させることができれば、プログラムを作成するうえで非常に効率が良くなります。 さらに、非常に長いプログラムは、人間にとって大変読み辛いものです。 そのために、ある小さなまとまりのある処理毎に、それが分かるように記述しておくことができると、大変読みやすく分かりやすくなります。 メソッドは、このような目的のために使われるプログラムを作るひとつの方法です。 他のプログラム言語では、関数あるいはサブルーチンと呼ばれる似た機能があります。全く同じではありませんが、Java言語ではメソッドと呼びます。
|
■ メソッドの記述 |
皆さんのテキストには、冪乗(ベキ乗)の計算の例が使われていますが、ここでは、「su1という数が、su2で割り切れるか否かを検査する」プログラムを考えてみることにします。dt1とdt2は、それぞれキーボードから入力された整数です。その数をもとに割り切れるか否かを調べるメソッドをhantei()とします。
hanteiメソッドは、「割られる数と割る数を受け取り、割り切れる場合は、戻り値として0(ゼロ)を返し、割り切れない場合は戻り値として1を返す」処理をします。 mein()にある、次の命令でhantei()メソッドが呼び出され実行され、結果がkekkaに代入されます。 kekka = hantei(dt1, dt2);
|
■ メソッドの構成 |
メソッドは、上記のプログラム例でも分かるように、次の3つから構成されています。
|
■ 戻り値のないメソッド |
上記のプログラム例の場合、hanteiメソッドはint型で宣言されていますので 、戻り値は整数となります。ここでは、1か0が戻されます。 プログラムによっては、戻り値を求めない場合もあります。この場合、 メソッドの宣言で、void という型名を使います。
|
■ 引数のないメソッド |
引数のないメソッドの場合、値が渡たされないということですから、引数を定義する部分は、次の記述例のように空となります。つまり何も記述しないということです。但しカッコは記述する必要があります。 public static double getRnd(){ プログラム文 }
|
■ 引数も戻り値もないメソッド |
引数と戻り値の両方がないメソッドは、次のような記述例になります。 public static void startMsg(){ プログラム文 } |
■ メソッドとの文字列のやりとり |
文字列をメソッドに引数として渡すときは、String型を使います。したがって、 メソッドで受け取る場合も、Stringで引数を定義しておく必要があります。 その他は数値の場合と同じです。 |
|