Java のメソッドとクラスの関係(クラス内の処理を定義する)
新人
「先輩、Javaでメソッドってよく聞くんですけど、それって何ですか?」
先輩
「メソッドっていうのは、Javaの中で“処理のかたまり”を表すものなんだ。たとえば、あいさつを表示する処理や、計算する処理などを、まとめて名前をつけて使えるようにしたものだよ。」
新人
「なるほど…でも、クラスの外にメソッドを書いたらダメなんですか?」
先輩
「Javaでは、すべてのメソッドはクラスの中に書くというルールになってるんだ。それにもちゃんと理由があるよ。詳しく説明していくね。」
1. Javaのメソッドとは?(基本をやさしく解説)
Javaにおける「メソッド」とは、ある処理をひとまとまりにして、名前をつけて再利用できるようにしたものです。たとえば、「こんにちは」と表示する処理をsayHelloというメソッドにしておけば、何度でも同じ処理を呼び出して使うことができます。
まずは、メソッドの基本的な書き方を見てみましょう。
public class Greeting {
// メソッドの定義
void sayHello() {
System.out.println("こんにちは!");
}
}
この例では、Greetingというクラスの中にsayHelloという名前のメソッドを作っています。このメソッドは「こんにちは!」というメッセージを画面に表示するだけの単純な処理です。
このメソッドを使いたいときは、次のように呼び出します。
public class Main {
public static void main(String[] args) {
Greeting g = new Greeting();
g.sayHello(); // メソッドの呼び出し
}
}
こんにちは!
このように、Javaではクラス → メソッド → 処理という形で、プログラムの中に処理を組み込んでいきます。メソッドを使うことで、同じ処理を何度も書かずに済み、プログラムがすっきりして読みやすくなります。
Javaの初心者にとって、メソッドの使い方はとても重要です。最初は表示するだけの簡単な処理から始めて、少しずつ引数や戻り値のあるメソッドにも挑戦していくと理解が深まります。
2. なぜメソッドはクラスの中に書くのか?(Javaのルールと意味)
Javaでは、すべてのメソッドは必ず「クラスの中」に書かなくてはいけません。これは、Javaという言語の基本ルールの一つです。
「なぜそんなルールがあるの?」と疑問に思うかもしれませんが、それには理由があります。Javaは「オブジェクト指向プログラミング」という考え方をベースにしていて、「すべてをクラスとして扱う」ように作られています。
たとえば、人間を表すPersonクラスの中に、「話す」という処理をメソッドとして定義すると、以下のようになります。
public class Person {
String name;
void talk() {
System.out.println(name + "が話しています。");
}
}
この例では、talk()というメソッドは、Personというクラスの中で定義されています。「話す」という行動は、「人」という存在の一部なので、その行動も人に属している、というふうに考えるのがJavaのスタイルなのです。
これにより、プログラムの中で「何が何をするのか」という関係がはっきりしやすくなります。「クラスは物(オブジェクト)」で、「メソッドはその物のふるまい」と考えると、イメージしやすくなります。
初心者のうちは、「Javaではメソッドはクラスの中にしか書けない」というルールをしっかり覚えることが大切です。慣れてくると、自然とこのルールが役立っていることに気づくようになります。
このように、「Javaのメソッドの使い方」と「クラスとの関係」は切っても切り離せない大事なポイントです。実際にpleiadesでクラスを作って、そこにメソッドを書いて動かしてみると、ルールの意味がよくわかってきます。
3. メソッドの書き方と呼び出し方(サンプルコード付き)
Javaでメソッドを使うためには、まずメソッドを定義し、その後で呼び出すという流れになります。初心者でも理解しやすいように、簡単なあいさつを表示するメソッドを使って説明します。
次のようなコードを書いてみましょう。
public class Greeter {
void sayHi() {
System.out.println("やっほー!");
}
}
このGreeterクラスにはsayHiというメソッドがあります。このメソッドを使って実際にメッセージを表示するには、次のようにします。
public class Main {
public static void main(String[] args) {
Greeter g = new Greeter();
g.sayHi();
}
}
やっほー!
このように、Javaでは「クラスを作る → メソッドを書く → 呼び出す」という流れでプログラムを動かします。初心者の方も、まずはこの基本パターンをしっかり覚えておくとよいでしょう。
4. メソッドとクラスの関係を図にすると?(構造をイメージで理解)
ここまでの説明で、「クラスの中にメソッドがある」ということはわかったと思います。でも、頭の中でイメージしにくいと感じる方も多いかもしれません。
そこで、簡単な図にして、クラスとメソッドの関係をイメージでつかんでみましょう。
イメージ図:
┌──────────────┐
│ クラス(Greeter) │
│ ┌────────────┐ │
│ │ メソッド(sayHi) │ │
│ └────────────┘ │
└──────────────┘
このように、「クラスという箱の中に、メソッドという部品が入っている」とイメージするとわかりやすいです。そして、そのクラスからオブジェクト(実体)を作って、メソッドを使うことで、処理を実行することができるのです。
Javaではこの構造をしっかり理解することが、プログラムを正しく書くための第一歩です。
5. メソッドの役割と便利さ(処理をまとめる意味)
メソッドの一番の役割は、「処理をまとめること」です。もしメソッドがなかったら、同じような処理を何度も何度も書かなければならず、プログラムがとても読みにくくなってしまいます。
たとえば、「2つの数を足す」という処理を何回も使いたいとき、メソッドがないと次のように書くことになります。
int result1 = 10 + 20;
int result2 = 30 + 40;
int result3 = 50 + 60;
でも、メソッドを使えば次のようにすっきりまとめることができます。
public class Calculator {
int add(int a, int b) {
return a + b;
}
}
public class Main {
public static void main(String[] args) {
Calculator c = new Calculator();
int r1 = c.add(10, 20);
int r2 = c.add(30, 40);
int r3 = c.add(50, 60);
System.out.println(r1);
System.out.println(r2);
System.out.println(r3);
}
}
30
70
110
このように、処理をメソッドにまとめることで、プログラムが短くなり、見やすくなります。さらに、何度も同じ処理を書く必要がなくなるので、ミスも減ります。
Javaを使った開発では、メソッドを上手に使うことがとても大切です。初心者の方はまず、自分がやりたい処理をメソッドに分けて書いてみるところから始めてみましょう。慣れてくると、自然に「これはメソッドにまとめた方がいいな」と考えられるようになってきます。
6. メソッドを使った実践例(オブジェクトを作って使ってみる)
ここでは、実際にJavaのクラスとメソッドを使って、簡単なプログラムを動かしてみましょう。今回は「動物が鳴く」という処理をメソッドにまとめた例を紹介します。初心者でもすぐに理解できるように、シンプルな構造にしています。
まずは、Animalというクラスを作って、その中にbarkというメソッドを定義します。
public class Animal {
String name;
void bark() {
System.out.println(name + " が鳴いています。");
}
}
次に、メインメソッドでオブジェクトを作り、フィールドに値を入れてからメソッドを呼び出します。
public class Main {
public static void main(String[] args) {
Animal dog = new Animal();
dog.name = "ポチ";
dog.bark();
Animal cat = new Animal();
cat.name = "ミケ";
cat.bark();
}
}
ポチ が鳴いています。
ミケ が鳴いています。
このように、Javaではクラスの中にメソッドを定義しておくことで、オブジェクトごとに異なる動作をさせることができます。これが「Javaのメソッドの使い方」と「クラスとの関係」を学ぶうえでの基本になります。
初心者の方は、まずこのように「処理をまとめて」「オブジェクトから呼び出す」という形に慣れていくことが大切です。
7. よくある間違いと初心者へのアドバイス(注意点とポイント)
Javaのメソッドとクラスの使い方を学ぶ中で、初心者の方がよくつまずくポイントがあります。ここでは、よくある間違いと、それを防ぐためのアドバイスを紹介します。
① メソッドをクラスの外に書いてしまう
Javaでは、メソッドは必ずクラスの中に書かなければいけません。これはルールなので、クラスの外に書いてしまうとエラーになります。
② メソッドの呼び出し方を間違える
オブジェクトを使ってメソッドを呼び出すとき、書き方が正しくないとエラーになります。
Person p = new Person();
p.talk(); // 正しい呼び出し方
もしPersonというクラスのオブジェクトを作っていないのに、talk()を呼ぼうとすると、うまく動きません。
③ メソッド名のスペルミス
Javaでは、大文字と小文字を区別します。たとえばsayHelloというメソッドをSayHelloと書くと、別の名前として扱われてしまいます。
④ メソッドの中に処理を書かずに呼び出す
メソッドの中に何も処理を書かずに呼び出しても、何も表示されません。何をしたいのかをメソッドの中にしっかり書いておくことが必要です。
⑤ メインメソッドがない
Javaのプログラムは、mainという名前のメソッドからスタートします。このmainメソッドがなければ、どれだけクラスやメソッドを書いても実行されません。
以上のようなポイントに注意すれば、Javaのメソッドの使い方とクラスとの関係がよりスムーズに理解できるようになります。特に初心者の方は、1つずつ丁寧に動かしながら試していくことが大切です。
pleiadesを使って、クラスの中にメソッドを書き、オブジェクトを作って呼び出す、という流れを繰り返すことで、確実に力がついていきます。